Condividi tramite


Funzione QueryInterruptTimePrecise (realtimeapiset.h)

Ottiene il conteggio del tempo di interruzione corrente, in un formato più preciso rispetto a QueryInterruptTime .

Sintassi

void QueryInterruptTimePrecise(
  [out] PULONGLONG lpInterruptTimePrecise
);

Parametri

[out] lpInterruptTimePrecise

Puntatore a un ULONGLONG in cui ricevere il conteggio del tempo di interruzione nelle 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

QueryInterruptTimePrecise è simile alla routine QueryInterruptTime , ma è più precisa. L'ora di interruzione segnalata da QueryInterruptTime è basata sul segno di spunta più recente del timer dell'orologio di sistema. Il timer dell'orologio di sistema è il timer hardware che genera periodicamente interruzioni per l'orologio di sistema. Il periodo uniforme tra gli interruzioni del timer dell'orologio di sistema viene definito un segno di spunta dell'orologio di sistema ed è in genere compreso nell'intervallo di 0,5 millisecondi a 15,625 millisecondi, a seconda della piattaforma hardware. Il valore del tempo di interruzione recuperato da QueryInterruptTime è accurato all'interno di un segno di spunta dell'orologio di sistema.

Per fornire un valore di tempo di sistema più preciso di quello di QueryInterruptTime, QueryInterruptTimePrecise legge direttamente l'hardware timer, pertanto una chiamata QueryInterruptTimePrecise può essere più lenta di una chiamata QueryInterruptTime .

Chiamare la routine KeQueryTimeIncrement per determinare la durata di un segno di spunta dell'orologio di sistema.

Vedere anche osservazioni in QueryInterruptTime.

Nota La funzione QueryInterruptTimePrecise genera risultati diversi nelle build di debug ("checked") di Windows, perché il conteggio dei tempi di interruzione 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 in esecuzione per molto tempo. La compilazione selezionata è disponibile per i sottoscrittori MSDN tramite il sito Web MICROSOFT Developer Network (MSDN).
 
Per compilare un'applicazione che usa questa funzione, definire _WIN32_WINNT come 0x0601 o versioni successive. Per altre informazioni, vedere Uso delle intestazioni di Windows.

Requisiti

Requisito Valore
Client minimo supportato Windows 10 [app desktop | App UWP]
Server minimo supportato Windows Server 2016 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione realtimeapiset.h
Libreria Mincore.lib
DLL Kernel32.dll

Vedere anche

Tempo di interruzione

QueryInterruptTime

QueryUnbiasedInterruptTime

QueryUnbiasedInterruptTimePrecise

Stati di alimentazione del sistema

Ora di Windows