Partager via


Événements de gestion de l’alimentation du système

Un événement de gestion de l’alimentation du système est un changement de l’état de l’alimentation du système, du mode opérationnel d’un appareil ou du système, ou de la valeur d’un paramètre d’alimentation. Étant donné que ces événements peuvent affecter le fonctionnement des applications et des pilotes installables, le système notifie toutes les applications et pilotes installables en diffusant une notification pour chaque événement. Les applications et services s’inscrivent aux notifications à l’aide de la fonction RegisterPowerSettingNotification. Les notifications sont reçues via le message WM_POWERBROADCAST, qui contient l’événement de gestion de l’alimentation et toutes les données spécifiques aux événements associées.

Événements d’état de l’alimentation du système

Un événement d’état de l’alimentation du système se produit lorsqu’il existe une modification de l’alimentation ou de l’état de la batterie du système. Par exemple, le système diffuse un événement PBT_APMPOWERSTATUSCHANGE chaque fois que l’utilisateur passe de la batterie à l’alimentation ac ou inversement. Le système diffuse également cet événement lorsque la batterie restante glisse en dessous du seuil spécifié par l’utilisateur ou si l’alimentation de la batterie change par un pourcentage spécifié.

Événements en mode opérationnel

Un événement en mode opérationnel se produit lorsqu’il existe un changement de consommation d’énergie, tel que le basculement du système vers un état de veille en raison de l’inactivité ou de l’utilisateur qui met le système en veille manuellement. Le système diffuse des événements sur ces modifications avant la modification de la consommation d’énergie. Par exemple, si le système détermine qu’il est inactif, il diffuse un événement PBT_APMSUSPEND qui avertit les applications et les pilotes qu’il est sur le point d’interrompre l’opération et de dormir pour conserver l’alimentation. Les applications et les pilotes peuvent se préparer à la veille en fermant des fichiers et en enregistrant des données afin d’éviter toute perte de données potentielle.

Lorsque le système exécute une suspension critique, le système est immédiatement mis en veille en raison d’une condition critique telle qu’une alarme de batterie critique. Contrairement à une transition normale du sommeil, le système n’avertit pas les applications et les conducteurs avant d’effectuer une suspension critique. Par conséquent, les demandes doivent être préparées pour gérer les suspensions critiques.

Lorsque l’opération système est restaurée après avoir été suspendue, le système avertit toutes les applications et pilotes. Il indique également si le système reprend à partir d’une suspension critique afin que l’application ou le pilote puisse prendre les mesures appropriées pour restaurer ses données et poursuivre l’opération.

Les applications doivent effectuer toutes les tentatives de gestion de la transition vers l’état de veille sans intervention de l’utilisateur, car il peut ne pas être possible pour l’utilisateur de répondre. Par exemple, le couvercle sur l’ordinateur notebook peut être fermé. Lorsqu’une application reçoit une notification indiquant que le système est sur le point d’entrer en veille, elle doit effectuer toutes les opérations nécessaires rapidement et sortir de la boucle de message. Le système autorise un maximum de deux secondes par application lors de la gestion de ce message avant l’expiration du délai d’attente.

Événements de modification de paramètre d’alimentation

Un événement de changement de paramètre d’alimentation se produit lorsqu’il existe une modification de la valeur d’un paramètre d’alimentation. Par exemple, l’utilisateur modifie le plan d’alimentation de haute performance en équilibre dans l’application Options d’alimentation dans le Panneau de configuration. Dans ce cas, le système diffuserait un événement qui indique que le plan d’alimentation a changé. Cet événement inclut la nouvelle valeur du paramètre d’alimentation.

à propos de l' de gestion de l’alimentation