Condividi tramite


Funzione QueryInterruptTime (realtimeapiset.h)

Ottiene il numero di interrupt-time corrente. Per un conteggio più preciso, usare QueryInterruptTimePrecise.

Sintassi

void QueryInterruptTime(
  [out] PULONGLONG lpInterruptTime
);

Parametri

[out] lpInterruptTime

Puntatore a ULONGLONG in cui ricevere il conteggio dei tempi di interrupt in unità temporali di sistema di 100 nanosecondi. Dividere per dieci milioni, o 1e7, per ottenere secondi (ci sono 1e9 nanosecondi in un secondo, quindi ci sono 1e7 100 nanosecondi in un secondo).

Valore restituito

Nessuno

Osservazioni

Il conteggio di interrupt-time inizia a zero all'avvio del sistema e viene incrementato a ogni interrupt di clock per la lunghezza di un segno di spunta dell'orologio. La lunghezza esatta di un tick di clock dipende dall'hardware sottostante e può variare tra i sistemi.

A differenza dell'ora di sistema, il conteggio dei tempi di interrupt non è soggetto a modifiche da parte degli utenti o del servizio ora di Windows. Le applicazioni possono usare il conteggio dei tempi di interrupt per misurare durate più fine rispetto a quelle possibili con l'ora di sistema. Le applicazioni che richiedono maggiore precisione rispetto al conteggio dei tempi di interrupt devono usare un timer ad alta risoluzione . Utilizzare la funzione queryPerformanceFrequency per recuperare la frequenza del timer ad alta risoluzione e la funzione QueryPerformanceCounter per recuperare il valore del contatore.

La risoluzione del timer impostata dalle funzioni timeBeginPeriod e timeEndPeriod influisce sulla risoluzione della funzione QueryInterruptTime . Tuttavia, l'aumento della risoluzione del timer non è consigliato perché può ridurre le prestazioni complessive del sistema e aumentare il consumo di energia del sistema impedendo al processore di immettere stati di risparmio energia. Al contrario, le applicazioni devono usare un timer ad alta risoluzione.

Nota La funzione QueryInterruptTime produce risultati diversi nelle compilazioni di debug ("checked") di Windows, perché il conteggio dei tempi di interrupt e il conteggio dei tick sono avanzati di circa 49 giorni. Ciò consente di identificare i bug che potrebbero non verificarsi fino a quando il sistema non è stato eseguito per molto tempo.
 
Per compilare un'applicazione che usa questa funzione, definire _WIN32_WINNT come 0x0601 o versione successiva. Per altre informazioni, vedere Uso delle intestazioni di Windows.

Fabbisogno

Requisito Valore
client minimo supportato Windows 10 [app desktop | App UWP]
server minimo supportato Windows Server 2016 [app desktop | App UWP]
piattaforma di destinazione Finestre
intestazione realtimeapiset.h
libreria Mincore.lib
dll Kernel32.dll

Vedere anche

tempo di interruzione

QueryInterruptTimePrecise

QueryUnbiasedInterruptTime

QueryUnbiasedInterruptTimePrecise

di power states di sistema

ora di Windows