Compartir a través de


Función PoQueryWatchdogTime (ntifs.h)

La rutina PoQueryWatchdogTime indica si el administrador de energía ha habilitado un contador de tiempo de espera de guardián para cualquier IRP de energía asignado actualmente a la pila de dispositivos.

Sintaxis

BOOLEAN PoQueryWatchdogTime(
  [in]  PDEVICE_OBJECT Pdo,
  [out] PULONG         SecondsRemaining
);

Parámetros

[in] Pdo

Puntero a un objeto de dispositivo físico (PDO). Este parámetro apunta a una estructura de DEVICE_OBJECT que representa un dispositivo físico.

[out] SecondsRemaining

Puntero a una ubicación en la que la rutina escribe el tiempo, en segundos, que permanece antes de que se establezca el siguiente tiempo de espera del guardián de energía.

Valor devuelto

PoQueryWatchdogTime devuelve TRUE si un IRP de energía habilitado para guardián está asignado actualmente a la pila de dispositivos. De lo contrario, devuelve FALSE.

Observaciones

Esta rutina permite a los controladores en modo kernel supervisar los contadores de tiempo de espera del guardián que el administrador de energía ha habilitado para realizar un seguimiento de los IRP de energía que ha emitido. Si uno o varios contadores de tiempo de espera del guardián están habilitados actualmente, la rutina devuelve TRUE y proporciona la cantidad de tiempo que permanece antes del siguiente tiempo de espera.

Por ejemplo, un controlador que experimenta retrasos al apagar un dispositivo puede llamar a esta rutina para determinar cuánto tiempo permanece antes de que el controlador deba responder a un IRP de energía para evitar un apagado controlado (una comprobación de errores) del sistema operativo.

El administrador de energía establece un contador de tiempo de espera de guardián cuando emite un IRP de energía a la pila de dispositivos. El período de tiempo de espera de este contador suele ser de varios minutos. Si un dispositivo de la pila no responde y hace que el IRP se detenga durante el período de tiempo de espera, el administrador de energía trata esta condición como un error irrecuperable e inicia un apagado controlado del sistema operativo.

Si se habilita actualmente más de un tiempo de espera del guardián de energía, la rutina establece *SecondsRemaining a la hora que permanece hasta el siguiente tiempo de espera.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 7
de la plataforma de destino de Universal
encabezado de ntifs.h (include Wdm.h, Ntddk.h, Ntifs.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL <= DISPATCH_LEVEL

Consulte también

DEVICE_OBJECT