답변:
좋은 질문. 알아 보자!
"비 활동시 일시 중지"옵션 을 조사 하여 시작합니다 .
<property ...>Suspend when inactive for</property> ...
<object ... id="combobox_sleep_ac">
다음과 같은 GSettings 키를 설정 한다는 것을 알 수 있습니다 sleep-inactive-ac-timeout
.
widget = GTK_WIDGET (gtk_builder_get_object (..., "combobox_sleep_ac")); ...
g_object_set_data (G_OBJECT(widget), "_gsettings_key", "sleep-inactive-ac-timeout");
문서 이 키에 대한 간단한 설명을 제공합니다 :
컴퓨터가 절전 모드로 전환되기 전에 AC 전원으로 컴퓨터를 비활성화해야하는 시간 (초)입니다. 값이 0이면 절대 의미하지 않습니다.
그러나 여전히 "비활성"의 의미는 설명하지 않습니다.
검색 을위한 sleep-inactive-ac-timeout
리드 우리 그놈 설정 데몬 ,
timeout_sleep = g_settings_get_int (..., "sleep-inactive-ac-timeout");
GNOME Session의 속성 을 주기적으로 확인 합니다 Presence.status
.
result = g_dbus_proxy_get_cached_property (...->session_presence_proxy, "status");
상태가 유휴 상태 인 경우 시스템을 절전 모드로 전환합니다 .
idle_set_mode (..., GSD_POWER_IDLE_MODE_SLEEP);
따라서 그놈 세션이 시스템이 "유휴"상태인지 여부를 결정하는 방법을 배워야합니다.
GNOME 세션이 곳에서 다음은 이전 버전과 업데이트 의 값을 Presence.status
,
gsm_presence_set_status (presence, GSM_PRESENCE_STATUS_IDLE, ...);
Xorg 의 카운터를 사용 한다는 것을 알 수 있습니다 IDLETIME
.
if (... && strcmp (counters[i].name, "IDLETIME") == 0) {
...->counter = counters[i].counter;
이 IDLETIME
카운터의 동작은 GNOME Power Manager 작성자의 블로그 게시물 에 요약되어 있습니다 .
gnome-power-manager는 Xorg 내부에서 IDLETIME이라는 카운터를 사용합니다. 이 카운터는 사용자가 마우스를 움직이지 않거나 일부 키를 클릭 할 때만 증가합니다. 사용자가 무언가를 클릭하면 IDLECOUNTER가 재설정됩니다.
이것은 우분투가 마지막 키 스트로크 나 마우스 동작 이후 경과 한 시간을 측정하여 비 활동을 결정한다는 것을 알려줍니다. CPU 사용량 및 네트워크 활동에는 영향을 미치지 않습니다.
wake up calls
.