Função PoQueryWatchdogTime (ntifs.h)
A rotina de PoQueryWatchdogTime indica se o power manager habilitou um contador de tempo limite de watchdog para qualquer IRP de energia que esteja atualmente atribuído à pilha de dispositivos.
Sintaxe
BOOLEAN PoQueryWatchdogTime(
[in] PDEVICE_OBJECT Pdo,
[out] PULONG SecondsRemaining
);
Parâmetros
[in] Pdo
Um ponteiro para um objeto de dispositivo físico (PDO). Esse parâmetro aponta para uma estrutura DEVICE_OBJECT que representa um dispositivo físico.
[out] SecondsRemaining
Um ponteiro para um local no qual a rotina grava o tempo, em segundos, que permanece antes que o tempo limite do próximo cão de guarda de energia esteja definido para ocorrer.
Valor de retorno
PoQueryWatchdogTime retornará TRUE se um IRP de energia habilitado para watchdog estiver atribuído atualmente à pilha de dispositivos. Caso contrário, ele retornará FALSE.
Observações
Essa rotina permite que os drivers no modo kernel monitorem contadores de tempo limite de watchdog que o power manager habilitou para controlar os IRPs de energia emitidos. Se um ou mais contadores de tempo limite de watchdog estiverem habilitados no momento, a rotina retornará VERDADEIRO e fornecerá o tempo restante antes do próximo tempo limite.
Por exemplo, um driver que enfrenta atrasos ao desligar um dispositivo pode chamar essa rotina para determinar quanto tempo resta antes que o driver precise responder a um IRP de energia para evitar um desligamento controlado (uma verificação de bug) do sistema operacional.
O power manager define um contador de tempo limite de watchdog quando emite um IRP de energia para a pilha de dispositivos. O período de tempo limite para esse contador normalmente é de vários minutos. Se um dispositivo na pilha não responder e fizer o IRP parar durante o período de tempo limite, o power manager tratará essa condição como um erro irrecuperável e iniciará um desligamento controlado do sistema operacional.
Se mais de um tempo limite do power watchdog estiver habilitado no momento, os conjuntos de rotina *SecondsRemaining ao tempo que permanece para o próximo tempo limite.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 7 |
da Plataforma de Destino | Universal |
cabeçalho | ntifs.h (incluem Wdm.h, Ntddk.h, Ntifs.h) |
biblioteca | NtosKrnl.lib |
de DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |