Função KeQueryDpcWatchdogInformation (wdm.h)
A rotina KeQueryDpcWatchdogInformation retorna os valores de temporizador de watchdog de chamada de procedimento adiado (DPC) para o processador atual.
NTSTATUS KeQueryDpcWatchdogInformation(
[out] PKDPC_WATCHDOG_INFORMATION WatchdogInformation
);
[out] WatchdogInformation
Um ponteiro para uma estrutura de KDPC_WATCHDOG_INFORMATION fornecida pelo chamador. A rotina grava os valores atuais do temporizador de watchdog DPC nessa estrutura.
KeQueryDpcWatchdogInformation retorna um valor NTSTATUS. Os valores de retorno possíveis incluem os seguintes códigos de status.
Código de retorno | Descrição |
---|---|
|
KeQueryDpcWatchdogInformation foi chamado enquanto um DPC estava em execução no processador atual. |
|
O processador atual não estava executando um DPC quando KeQueryDpcWatchdogInformation foi chamado. |
A rotina de KeQueryDpcWatchdogInformation pode ser chamada de uma rotina de DPC ou em uma DISPATCH_LEVEL IRQL= para determinar a quantidade de tempo que permanece antes que ocorra um tempo limite de DPC. O sistema operacional implementa um temporizador de watchdog DPC para detectar quando uma única rotina de DPC é executada por muito tempo ou quando uma série de rotinas de DPC enfileiradas é executada de costas para trás por muito tempo. Se os erros de tempo limite de DPC estiverem habilitados e se uma rotina de DPC exceder o limite de tempo para uma única rotina ou uma série de rotinas de DPC exceder o limite de tempo agregado, ocorrerá uma verificação de bug DPC_WATCHDOG_VIOLATION (0x133).
KeQueryDpcWatchdogInformation deve ser chamado enquanto um DPC está em execução ou invocado em um DISPATCH_LEVEL IRQL= ou superior no processador atual. Caso contrário, a chamada falhará e retornará STATUS_UNSUCCESSFUL.
As rotinas de DPC devem ser executadas apenas por períodos breves e devem delegar o máximo possível de processamento para threads de trabalho. Para evitar degradar a capacidade de resposta do sistema, uma rotina de DPC típica deve ser executada por no máximo 100 microssegundos cada vez que for chamada. Para obter mais informações, consulte Guidelines for Writing DPC Routines.
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível a partir do Windows Vista. |
da Plataforma de Destino | Universal |
cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
biblioteca | NtosKrnl.lib |
de DLL | NtosKrnl.exe |
IRQL | DISPATCH_LEVEL |