KeQueryDpcWatchdogInformation, fonction (wdm.h)
La routine KeQueryDpcWatchdogInformation retourne les valeurs du minuteur de surveillance d’appel de procédure différée (DPC) pour le processeur actuel.
Syntaxe
NTSTATUS KeQueryDpcWatchdogInformation(
[out] PKDPC_WATCHDOG_INFORMATION WatchdogInformation
);
Paramètres
[out] WatchdogInformation
Pointeur vers une structure de KDPC_WATCHDOG_INFORMATION fournie par l’appelant. La routine écrit les valeurs actuelles du minuteur de surveillance DPC dans cette structure.
Valeur retournée
KeQueryDpcWatchdogInformation retourne une valeur NTSTATUS. Les valeurs de retour possibles incluent les codes status suivants.
Code de retour | Description |
---|---|
|
KeQueryDpcWatchdogInformation a été appelé alors qu’un DPC s’exécutait sur le processeur actuel. |
|
Le processeur actuel n’exécutait pas de DPC lorsque KeQueryDpcWatchdogInformation a été appelé. |
Remarques
La routine KeQueryDpcWatchdogInformation peut être appelée à partir d’une routine DPC ou à un DISPATCH_LEVEL IRQL= pour déterminer le temps restant avant l’expiration d’un délai DPC. Le système d’exploitation implémente un minuteur de surveillance DPC pour détecter quand une seule routine DPC s’exécute trop longtemps ou quand une série de routines DPC mises en file d’attente s’exécute dos à dos pendant trop longtemps. Si des erreurs de délai d’attente DPC sont activées et si une routine DPC dépasse la limite de temps pour une seule routine ou si une série de routines DPC dépasse la limite de temps agrégée, un bogue DPC_WATCHDOG_VIOLATION (0x133) case activée se produit.
KeQueryDpcWatchdogInformation doit être appelé pendant qu’un DPC est en cours d’exécution ou appelé à une valeur IRQL= DISPATCH_LEVEL ou supérieure sur le processeur actuel. Sinon, l’appel échoue et retourne STATUS_UNSUCCESSFUL.
Les routines DPC ne doivent s’exécuter que pendant de brèves périodes et doivent déléguer autant de traitement que possible aux threads de travail. Pour éviter de dégrader la réactivité du système, une routine DPC classique ne doit pas s’exécuter pendant plus de 100 microsecondes chaque fois qu’elle est appelée. Pour plus d’informations, consultez Recommandations pour l’écriture de routines DPC.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible à partir de Windows Vista. |
Plateforme cible | Universal |
En-tête | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | DISPATCH_LEVEL |