Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Il sistema operativo Windows offre un set completo e a livello di sistema di funzionalità di risparmio energia. Ciò consente ai sistemi di estendere la durata della batteria e risparmiare energia, ridurre calore e rumore e garantire l'affidabilità dei dati.
Modern Standby e progettazione delle applicazioni
Modern Standby (stato di inattività S0 a basso consumo) è la modalità di sospensione predefinita sulla maggior parte dei dispositivi Windows 11. A differenza della sospensione S3 tradizionale, il sistema rimane parzialmente in esecuzione, la connettività di rete può essere mantenuta e il sistema può riattivarsi immediatamente. Questo cambia il modo in cui le applicazioni devono gestire il lavoro in background.
Importante
I comuni anti-pattern che consumano la batteria in Modern Standby:
-
Tenendo premuto
ES_SYSTEM_REQUIREDcontinuamente — ciò impedisce al sistema di entrare in uno stato di inattività a basso consumo. Tenere premuto questo flag solo durante l'esecuzione attiva del lavoro, quindi cancellarlo immediatamente. - Riattivazione periodica del timer : i timer che vengono attivati ogni pochi secondi mantengono attiva la CPU. Usare invece timer di unione o progettazioni basate su eventi.
- Polling di rete non associato : per le app in pacchetto, usare le notifiche push (WNS). Per le app Win32 non in pacchetto, usare socket basati su eventi o notifiche di modifica dell'elenco di rete anziché eseguire il polling di un endpoint.
- Flussi audio/video lasciati aperti — Anche i flussi silenziosi impediscono lo spegnimento del dispositivo audio. Rilasciare dispositivi audio quando non viene eseguito attivamente il rendering.
Procedure consigliate per lo standby moderno
-
Registrarsi per ricevere notifiche di alimentazione per rilevare le transizioni. Usare PowerSettingRegisterNotification con
GUID_MONITOR_POWER_ONeGUID_POWER_SAVING_STATUS. - Rinvia le attività non critiche finché il dispositivo non è collegato all'alimentazione CA. Prima di avviare operazioni di grandi dimensioni, rivolgersi a GetSystemPowerStatus .
-
Usare SetThreadExecutionState con moderazione - Chiamare con
ES_CONTINUOUS | ES_SYSTEM_REQUIREDsolo per le operazioni attive (trasferimenti di file, registrazione multimediale) e cancellare sempre conSetThreadExecutionState(ES_CONTINUOUS)al termine dell'operazione. - Operazioni di rete batch : combinare più richieste di piccole dimensioni in una sessione per ridurre al minimo il tempo di riattivazione della radio.
-
Rispettare il risparmio batteria : quando
GUID_POWER_SAVING_STATUSindica che il risparmio batteria è attivo, ridurre o eliminare l'attività in background.
Le funzioni di risparmio energia e i messaggi recuperano lo stato di alimentazione del sistema, notificano alle applicazioni eventi di risparmio energia e notificano al sistema i requisiti di alimentazione di ogni applicazione. Questa panoramica contiene gli argomenti seguenti:
- Windows Gestione dell'alimentazione
- stato di alimentazione del sistema
- Stati Di Alimentazione Del Sistema
- Eventi di gestione dell'energia di sistema
- WM_POWERBROADCAST Messaggi
- criteri di sospensione del sistema
- Eventi di riattivazione del sistema
- informazioni sulla batteria
- Interfaccia di controllo della retroilluminazione
- combinazioni di alimentazione
- Gestione dell'alimentazione del dispositivo
Argomenti correlati