QueryUnbiasedInterruptTime-Funktion (realtimeapiset.h)
Ruft die aktuelle unvoreingenommene Unterbrechungszeitanzahl in Einheiten von 100 Nanosekunden ab. Die unvoreingenommene Unterbrechungszeit umfasst nicht die Zeit, die das System im Ruhezustand oder im Ruhezustand verbringt.
Syntax
BOOL QueryUnbiasedInterruptTime(
PULONGLONG UnbiasedTime
);
Parameter
UnbiasedTime
TBD
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null. Wenn die Funktion fehlschlägt, weil sie mit einem NULL-Parameter aufgerufen wird, ist der Rückgabewert null.
Bemerkungen
Die Unterbrechungszeitanzahl beginnt bei Null, wenn das System beginnt und bei jeder Uhr um die Länge eines Taktstrichs erhöht wird. Die genaue Länge eines Taktstrichs hängt von der zugrunde liegenden Hardware ab und kann zwischen Systemen variieren.
Die Unterbrechungszeitanzahl, die von der QueryUnbiasedInterruptTime- Funktion abgerufen wird, spiegelt nur die Zeit wider, zu der sich das System im Arbeitszustand befindet. Daher ist die Unterbrechungszeitanzahl nicht "voreingenommen" durch die Zeit, die das System im Ruhezustand oder im Ruhezustand verbringt. Das System verwendet eine voreingenommene Unterbrechungszeit für einige Vorgänge, z. B. die Sicherstellung, dass relative Timer, die während des Schlafes abgelaufen wären, sofort nach dem Aufwachen ablaufen.
Im Gegensatz zur Systemzeit unterliegt die Unterbrechungszeit nicht den Anpassungen durch Benutzer oder den Windows-Zeitdienst. Anwendungen können die Unterbrechungszeitanzahl verwenden, um feinere Dauer zu messen, als mit der Systemzeit möglich sind. Anwendungen, die eine höhere Genauigkeit als die Unterbrechungszeitanzahl erfordern, sollten einen hochauflösenden Timerverwenden. Verwenden Sie die QueryPerformanceFrequency-funktion, um die Häufigkeit des hochauflösenden Timers und der QueryPerformanceCounter--Funktion abzurufen, um den Wert des Zählers abzurufen.
Die zeitgeberauflösung, die durch die timeBeginPeriod- und timeEndPeriod--Funktionen festgelegt wird, wirkt sich auf die Auflösung der QueryUnbiasedInterruptTime--Funktion aus. Das Erhöhen der Timerauflösung wird jedoch nicht empfohlen, da sie die Gesamtleistung des Systems reduzieren und den Stromverbrauch des Systems erhöhen kann, indem verhindert wird, dass der Prozessor Stromsparzustände eingibt. Stattdessen sollten Anwendungen einen hochauflösenden Timer verwenden.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 7, Windows 8 [Desktop-Apps | UWP-Apps] |
mindestens unterstützte Server- | Windows Server 2008 R2 [Desktop-Apps | UWP-Apps] |
Zielplattform- | Fenster |
Header- | realtimeapiset.h (include Windows.h) |
Library | Kernel32.lib |
DLL- | Kernel32.dll |