Функция QueryInterruptTimePrecise (realtimeapiset.h)

Возвращает текущее количество времени прерываний в более точной форме, чем QueryInterruptTime .

Синтаксис

void QueryInterruptTimePrecise(
  [out] PULONGLONG lpInterruptTimePrecise
);

Параметры

[out] lpInterruptTimePrecise

Указатель на ULONGLONG, в котором требуется получить количество прерываний в системных единицах времени 100 наносекунд. Разделите на десять миллионов, или 1e7, чтобы получить секунды (есть 1e9 наносекунд в секунду, так что есть 1e7 100 наносекунд в секунду).

Возвращаемое значение

None

Remarks

QueryInterruptTimePrecise похож на подпрограмму QueryInterruptTime , но является более точным. Время прерывания, сообщаемое QueryInterruptTime , основано на последнем тактовом таймере системных часов. Таймер системных часов — это аппаратный таймер, который периодически создает прерывания для системных часов. Равномерный период между прерываниями таймера системных часов называется тактом системных часов и обычно находится в диапазоне от 0,5 до 15,625 миллисекунд в зависимости от аппаратной платформы. Значение времени прерывания, полученное QueryInterruptTime , является точным в тактах системных часов.

Чтобы задать значение системного времени, более точное, чем у QueryInterruptTime, QueryInterruptTimePrecise считывает оборудование таймера напрямую, поэтому вызов QueryInterruptTimePrecise может быть медленнее, чем вызов QueryInterruptTime .

Вызовите подпрограмму KeQueryTimeIncrement , чтобы определить длительность такта системных часов.

См. также примечания в QueryInterruptTime.

Примечание Функция QueryInterruptTimePrecise выдает разные результаты в отладочных сборках Windows ("проверено"), так как количество прерываний и число тактов расширены примерно на 49 дней. Это помогает выявлять ошибки, которые могут не возникать, пока система не будет работать в течение длительного времени. Проверенная сборка доступна подписчикам MSDN на веб-сайте Microsoft Developer Network (MSDN).
 
Чтобы скомпилировать приложение, использующее эту функцию, определите _WIN32_WINNT как 0x0601 или более поздней версии. Дополнительные сведения см. в разделе Использование заголовков Windows.

Требования

Требование Значение
Минимальная версия клиента Windows 10 [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2016 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header realtimeapiset.h
Библиотека Mincore.lib
DLL Kernel32.dll

См. также

Время прерывания

QueryInterruptTime

QueryUnbiasedInterruptTime

QueryUnbiasedInterruptTimePrecise

Состояния питания системы

Служба времени Windows