powerMonitor
전원 상태 변경을 감시한다.
프로세스: Main
이벤트
powerMonitor
모듈은 다음과 같은 이벤트를 발생시킨다:
이벤트: 'suspend'
시스템이 일시 중단(suspend) 상태로 들어갈 때 발생한다.
이벤트: 'resume'
시스템이 재개될 때 발생한다.
이벤트: 'on-ac' macOS Windows
시스템이 AC 전원으로 전환될 때 발생한다.
이벤트: 'on-battery' macOS Windows
시스템이 배터리 전원으로 전환될 때 발생한다.
이벤트: 'thermal-state-change' macOS
state
string - 시스템의 새로운 열 상태.unknown
,nominal
,fair
,serious
,critical
중 하나일 수 있다.
시스템의 열 상태가 변경될 때 발생한다. 시스템이 위험한 온도 범위에 진입하는 등 열 상태가 변할 때 이 이벤트가 발생한다. 심각도에 따라 시스템은 온도를 낮추기 위해 CPU를 제한하거나 팬을 켜는 등의 조치를 취할 수 있다.
앱은 이 새로운 상태에 반응해 비용이 많이 드는 계산 작업(예: 비디오 인코딩)을 줄이거나 사용자에게 알림을 보낼 수 있다. 동일한 상태가 반복적으로 수신될 수도 있다.
자세한 내용은 다음 링크를 참고한다: https://developer.apple.com/library/archive/documentation/Performance/Conceptual/power_efficiency_guidelines_osx/RespondToThermalStateChanges.html
이벤트: 'speed-limit-change' macOS Windows
limit
number - 운영체제에서 공표한 CPU 속도 제한 값, 퍼센트 단위.
운영체제에서 공표한 CPU 속도 제한이 변경될 때 발생하는 이벤트다. 이 값은 퍼센트 단위로 표시되며, 100 미만의 값은 열 관리로 인해 처리 성능이 제한되고 있음을 의미한다.
이벤트: 'shutdown' Linux macOS
이 이벤트는 시스템이 재부팅되거나 종료되기 직전에 발생한다. 이벤트 핸들러에서 e.preventDefault()
를 호출하면, 앱이 깔끔하게 종료될 수 있도록 Electron이 시스템 종료를 지연시키려고 시도한다. e.preventDefault()
를 호출한 경우, 앱은 가능한 한 빨리 app.quit()
와 같은 메서드를 호출해 종료해야 한다.
이벤트: 'lock-screen' macOS Windows
시스템이 화면을 잠그려고 할 때 발생한다.
이벤트: 'unlock-screen' macOS Windows
시스템 화면이 잠금 해제되면 이 이벤트가 발생한다.
이벤트: 'user-did-become-active' macOS
로그인 세션이 활성화될 때 발생한다. 자세한 내용은 문서를 참고한다.
이벤트: 'user-did-resign-active' macOS
로그인 세션이 비활성화될 때 발생한다. 자세한 내용은 공식 문서를 참고한다.
메서드
powerMonitor
모듈은 다음과 같은 메서드를 제공한다:
powerMonitor.getSystemIdleState(idleThreshold)
idleThreshold
Integer
string
을 반환한다. 시스템의 현재 유휴 상태를 나타내며, active
, idle
, locked
, unknown
중 하나의 값을 가진다.
시스템의 유휴 상태를 계산한다. idleThreshold
는 유휴 상태로 간주되기까지의 시간(초 단위)을 의미한다. locked
상태는 지원되는 시스템에서만 사용할 수 있다.
powerMonitor.getSystemIdleTime()
Integer
를 반환한다. 시스템이 유휴 상태인 시간을 초 단위로 계산한다.
powerMonitor.getCurrentThermalState()
macOS
string
타입을 반환한다. 시스템의 현재 열 상태를 나타내며, unknown
, nominal
, fair
, serious
, critical
중 하나의 값을 가진다.
powerMonitor.isOnBatteryPower()
boolean
타입의 값을 반환한다. 시스템이 배터리 전원을 사용 중인지 여부를 나타낸다.
이 속성의 변경 사항을 모니터링하려면 on-battery
와 on-ac
이벤트를 사용한다.
속성
powerMonitor.onBatteryPower
boolean
타입의 속성이다. 시스템이 배터리 전원으로 동작 중인 경우 true
값을 가진다.
자세한 내용은 powerMonitor.isOnBatteryPower()
를 참고한다.