Funzione KeQueryInterruptTime (wdm.h)
La routine KeQueryInterruptTime restituisce il valore corrente del numero di tempo di interruzione del sistema, con accuratezza all'interno del segno di spunta dell'orologio di sistema.
Sintassi
ULONGLONG KeQueryInterruptTime();
Valore restituito
KeQueryInterruptTime restituisce il conteggio del tempo di interruzione corrente in 100-nanosecondi. L'aggiornamento a questo valore restituito si verifica in genere almeno una volta per ogni segno di spunta del clock di sistema.
Commenti
Questa routine restituisce il tempo di interruzione del sistema, ovvero la quantità di tempo trascorsa dall'ultimo avvio del sistema operativo. Il numero di interruzioni inizia a zero all'avvio del sistema operativo e viene incrementato a ogni interruzione dell'orologio per la lunghezza di un segno di spunta dell'orologio. Per vari motivi, ad esempio le differenze hardware, la lunghezza di un orologio di sistema può variare tra i computer. Chiamare la routine KeQueryTimeIncrement per determinare le dimensioni di un orologio di sistema.
KeQueryInterruptTime può essere usato per l'ottimizzazione delle prestazioni. Questa routine restituisce una misura con granularità più fine rispetto alla routine KeQueryTickCount . Una chiamata a KeQueryInterruptTime ha un sovraccarico notevolmente inferiore rispetto a una chiamata alla routine KeQueryPerformanceCounter .
Di conseguenza, il tempo di interruzione può essere usato per misurare durate molto fine mentre il sistema è in esecuzione perché le operazioni che impostano o reimpostano il tempo di sistema non hanno alcun effetto sul numero di tempo di interruzione del sistema.
Tuttavia, le modifiche dello stato di risparmio energia influiscono sul conteggio dei tempi di interruzione del sistema. La manutenzione del numero di tempo di interruzione viene sospesa durante gli stati di sospensione del sistema. Quando si verifica una transizione successiva dello stato di riattivazione, il sistema aggiunge un valore di "pregiudizio" al conteggio tempo di interruzione per compensare la durata stimata di tale stato di sospensione. Il numero di tempo di interruzione restituito da KeQueryInterruptTime include questo valore di pregiudizio. Per ottenere un conteggio tempo di interruzione non crittografato, usare la routine KeQueryUnbiasedInterruptTime anziché KeQueryInterruptTime.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile a partire da Windows 2000. |
Piattaforma di destinazione | Universale |
Intestazione | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Libreria | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Qualsiasi livello |
Vedi anche
Acquisizione di timestamp ad alta risoluzione
KeQueryInterruptTimePrecise