Partager via


KeQueryInterruptTime, fonction (wdm.h)

La routine KeQueryInterruptTime retourne la valeur actuelle du nombre d’interruptions de temps d’interruption du système, avec précision à la graduation de l’horloge système.

Syntaxe

ULONGLONG KeQueryInterruptTime();

Valeur de retour

KeQueryInterruptTime retourne le nombre d’interruptions actuel en unités de 100 nanosecondes. La mise à jour de cette valeur de retour se produit généralement au moins une fois par cycles d’horloge système.

Remarques

Cette routine retourne l’heure d’interruption du système, qui est la durée depuis le dernier démarrage du système d’exploitation. Le nombre d’interruptions commence à zéro lorsque le système d’exploitation démarre et est incrémenté à chaque interruption d’horloge par la longueur d’une graduation d’horloge. Pour différentes raisons, telles que les différences matérielles, la longueur d’une graduation d’horloge système peut varier entre les ordinateurs. Appelez la routine KeQueryTimeIncrement pour déterminer la taille d’une graduation d’horloge système.

KeQueryInterruptTime pouvez être utilisé pour le réglage des performances. Cette routine retourne une mesure plus fine que la routine KeQueryTickCount. Un appel à KeQueryInterruptTime a considérablement moins de surcharge qu’un appel à la routine KeQueryPerformanceCounter.

Par conséquent, le temps d’interruption peut être utilisé pour mesurer des durées très précises pendant l’exécution du système, car les opérations qui définissent ou réinitialisent l’heure du système n’ont aucun effet sur le nombre de temps d’interruption du système.

Toutefois, les modifications d’état de gestion de l’alimentation affectent le nombre de temps d’interruption du système. La maintenance du nombre de temps d’interruption est suspendue pendant les états de veille du système. Lorsqu’une transition d’état de veille suivante se produit, le système ajoute une valeur de « biais » au nombre de temps d’interruption pour compenser la durée estimée d’un tel état de veille. Le nombre de temps d’interruption retourné par KeQueryInterruptTime inclut cette valeur de biais. Pour obtenir un nombre de temps d’interruption non biaisé, utilisez la routine KeQueryUnbiasedInterruptTime au lieu de KeQueryInterruptTime.

Exigences

Exigence Valeur
client minimum pris en charge Disponible à partir de Windows 2000.
plateforme cible Universel
d’en-tête wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL N’importe quel niveau

Voir aussi

Acquisition d’horodatages haute résolution

KeQueryInterruptTimePrecise

KeQueryPerformanceCounter

KeQueryTickCount

KeQueryTimeIncrement

KeQueryUnbiasedInterruptTime