Partager via


QueryInterruptTimePrecise, fonction (realtimeapiset.h)

Obtient le nombre d’interruptions actuel, sous une forme plus précise que QueryInterruptTime fait.

Syntaxe

void QueryInterruptTimePrecise(
  [out] PULONGLONG lpInterruptTimePrecise
);

Paramètres

[out] lpInterruptTimePrecise

Pointeur vers un ULONGLONG dans lequel recevoir le nombre d’interruptions dans les unités de temps système de 100 nanosecondes. Divisez de dix millions, ou 1e7, pour obtenir des secondes (il y a 1e9 nanosecondes en seconde, donc il y a 1e7 100 nanosecondes en seconde).

Valeur de retour

Aucun

Remarques

QueryInterruptTimePrecise est similaire à la routine QueryInterruptTime, mais est plus précise. L’heure d’interruption signalée par QueryInterruptTime est basée sur la dernière graduation du minuteur d’horloge système. Le minuteur d’horloge système est le minuteur matériel qui génère régulièrement des interruptions pour l’horloge système. La période uniforme entre les interruptions du minuteur d’horloge système est appelée cycles d’horloge système et est généralement comprise entre 0,5 millisecondes et 15,625 millisecondes, selon la plateforme matérielle. La valeur d’heure d’interruption récupérée par QueryInterruptTime est exacte dans une graduation d’horloge système.

Pour fournir une valeur de temps système plus précise que celle de QueryInterruptTime, QueryInterruptTimePrecise lit directement le matériel du minuteur, par conséquent, un appel QueryInterruptTimePrecise peut être plus lent qu’un appel QueryInterruptTime.

Appelez la routine KeQueryTimeIncrement pour déterminer la durée d’une graduation d’horloge système.

Consultez également les remarques dans QueryInterruptTime.

Remarque La fonction QueryInterruptTimePrecise produit des résultats différents sur les builds de débogage (« vérifié ») de Windows, car le nombre d’interruptions et le nombre de graduations sont avancés d’environ 49 jours. Cela permet d’identifier les bogues qui peuvent ne pas se produire tant que le système n’a pas été en cours d’exécution depuis longtemps.
 
Pour compiler une application qui utilise cette fonction, définissez _WIN32_WINNT en tant que 0x0601 ou version ultérieure. Pour plus d’informations, consultez Utilisation des en-têtes Windows.

Exigences

Exigence Valeur
client minimum pris en charge Windows 10 [applications de bureau | Applications UWP]
serveur minimum pris en charge Windows Server 2016 [applications de bureau | Applications UWP]
plateforme cible Windows
d’en-tête realtimeapiset.h
bibliothèque Mincore.lib
DLL Kernel32.dll

Voir aussi

temps d’interruption

QueryInterruptTime

QueryUnbiasedInterruptTime

QueryUnbiasedInterruptTimePrecise

System Power States

de temps Windows