Compartilhar via


Função QueryInterruptTimePrecise (realtimeapiset.h)

Obtém a contagem atual de tempo de interrupção, em uma forma mais precisa do que QueryInterruptTime.

Sintaxe

void QueryInterruptTimePrecise(
  [out] PULONGLONG lpInterruptTimePrecise
);

Parâmetros

[out] lpInterruptTimePrecise

Um ponteiro para um ULONGLONG no qual receber a contagem de tempo de interrupção em unidades de tempo do sistema de 100 nanossegundos. Divida por dez milhões, ou 1e7, para obter segundos (há 1e9 nanossegundos em um segundo, então há 1e7 100 nanossegundos em um segundo).

Valor de retorno

Nenhum

Observações

QueryInterruptTimePrecise é semelhante à rotina de queryInterruptTime , mas é mais precisa. O tempo de interrupção relatado por QueryInterruptTime baseia-se no tique mais recente do temporizador do relógio do sistema. O temporizador do relógio do sistema é o temporizador de hardware que gera periodicamente interrupções para o relógio do sistema. O período uniforme entre as interrupções do temporizador do relógio do sistema é conhecido como um tique de relógio do sistema e normalmente está no intervalo de 0,5 milissegundos a 15,625 milissegundos, dependendo da plataforma de hardware. O valor de tempo de interrupção recuperado por QueryInterruptTime é preciso dentro de um tique de relógio do sistema.

Para fornecer um valor de tempo do sistema mais preciso do que o de queryInterruptTime, QueryInterruptTimePrecise lê diretamente o hardware do temporizador, portanto, uma chamada QueryInterruptTimePrecise pode ser mais lenta do que uma chamada QueryInterruptTime.

Chame a rotina KeQueryTimeIncrement para determinar a duração de um tique de relógio do sistema.

Consulte também comentários em queryInterruptTime.

Observação a função QueryInterruptTimePrecise produz resultados diferentes em builds de depuração ("verificado") do Windows, pois a contagem de tempo de interrupção e a contagem de tiques são avançadas em aproximadamente 49 dias. Isso ajuda a identificar bugs que podem não ocorrer até que o sistema esteja em execução há muito tempo.
 
Para compilar um aplicativo que usa essa função, defina _WIN32_WINNT como 0x0601 ou posterior. Para obter mais informações, consulte Usando os cabeçalhos do Windows.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 10 [aplicativos da área de trabalho | Aplicativos UWP]
servidor com suporte mínimo Windows Server 2016 [aplicativos da área de trabalho | Aplicativos UWP]
da Plataforma de Destino Windows
cabeçalho realtimeapiset.h
biblioteca Mincore.lib
de DLL Kernel32.dll

Consulte também

de tempo de interrupção

QueryInterruptTime

queryUnbiasedInterruptTime

QueryUnbiasedInterruptTimePrecise

de estados de energia do sistema

do Windows Time