QueryInterruptTime-Funktion (realtimeapiset.h)

Ruft die aktuelle Anzahl der Unterbrechungszeiten ab. Für eine genauere Anzahl verwenden Sie QueryInterruptTimePrecise.

Syntax

void QueryInterruptTime(
  [out] PULONGLONG lpInterruptTime
);

Parameter

[out] lpInterruptTime

Ein Zeiger auf eine ULONGLONGLONG, in der die Interruptzeitanzahl in Systemzeiteinheiten von 100 Nanosekunden empfangen werden soll. Dividieren Sie durch zehn Millionen oder 1e7, um Sekunden zu erhalten (es gibt 1e9 Nanosekunden in einer Sekunde, also 1e7 100 Nanosekunden in einer Sekunde).

Rückgabewert

Keine

Bemerkungen

Die Interruptzeitanzahl beginnt bei null, wenn das System gestartet wird, und wird bei jeder Unterbrechung um die Länge eines Taktstrichs erhöht. Die genaue Länge eines Takts hängt von der zugrunde liegenden Hardware ab und kann von System zu System zu System variieren.

Im Gegensatz zur Systemzeit unterliegt die Anzahl der Unterbrechungszeiten nicht den Anpassungen durch Benutzer oder den Windows-Zeitdienst. Anwendungen können die Anzahl der Unterbrechungszeiten verwenden, um eine feinere Dauer zu messen, als dies mit der Systemzeit möglich ist. Anwendungen, die eine höhere Genauigkeit als die Anzahl der Unterbrechungszeiten erfordern, sollten einen Timer mit hoher Auflösung verwenden. Verwenden Sie die QueryPerformanceFrequency-Funktion , um die Häufigkeit des Timers mit hoher Auflösung und die QueryPerformanceCounter-Funktion abzurufen, um den Wert des Zählers abzurufen.

Die von den Funktionen timeBeginPeriod und timeEndPeriod festgelegte Timerauflösung wirkt sich auf die Auflösung der QueryInterruptTime-Funktion aus. Es wird jedoch nicht empfohlen, die Timerauflösung zu erhöhen, da dies die Gesamtleistung des Systems verringern und den Stromverbrauch des Systems erhöhen kann, indem verhindert wird, dass der Prozessor in energiesparende Zustände wechselt. Stattdessen sollten Anwendungen einen Timer mit hoher Auflösung verwenden.

Hinweis Die QueryInterruptTime-Funktion erzeugt unterschiedliche Ergebnisse bei Debugbuilds ("überprüft") von Windows, da die Interruptzeitanzahl und die Tickanzahl um ungefähr 49 Tage erweitert werden. Dies hilft, Fehler zu identifizieren, die möglicherweise erst auftreten, wenn das System über einen längeren Zeitraum ausgeführt wurde. Der überprüfte Build ist für MSDN-Abonnenten über die Msdn-Website (Microsoft Developer Network) verfügbar.
 
Um eine Anwendung zu kompilieren, die diese Funktion verwendet, definieren Sie _WIN32_WINNT als 0x0601 oder höher. Weitere Informationen finden Sie unter Verwenden der Windows-Header.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 10 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2016 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile realtimeapiset.h
Bibliothek Mincore.lib
DLL Kernel32.dll

Siehe auch

Unterbrechungszeit

QueryInterruptTimePrecise

QueryUnbiasedInterruptTime

QueryUnbiasedInterruptTimePrecise

Systemleistungszustände

Windows-Zeitdienst