Поделиться через


Функция QueryPerformanceCounter (profileapi.h)

Извлекает текущее значение счетчика производительности, которое является меткой времени с высоким разрешением (<1 единица), которую можно использовать для измерения интервала времени.

Синтаксис

BOOL QueryPerformanceCounter(
  [out] LARGE_INTEGER *lpPerformanceCount
);

Параметры

[out] lpPerformanceCount

Указатель на переменную, которая получает текущее значение счетчика производительности в подсчетах.

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

Если функция выполнена успешно, возвращаемое значение ненулевое.

Если функция завершается ошибкой, возвращаемое значение равно нулю. Чтобы получить расширенные сведения об ошибке, вызовите GetLastError. В системах под управлением Windows XP или более поздней версии функция всегда будет выполнена успешно, если заданы допустимые параметры и поэтому никогда не будет возвращать ноль.

Замечания

Дополнительные сведения об этой функции и ее использовании см. в разделе "Получение меток времени с высоким разрешением".

Примеры

// Gets the current number of ticks from QueryPerformanceCounter. Throws an
// exception if the call to QueryPerformanceCounter fails.
static inline int64_t GetTicks()
{
    LARGE_INTEGER ticks;
    if (!QueryPerformanceCounter(&ticks))
    {
        winrt::throw_last_error();
    }
    return ticks.QuadPart;
}

Требования

Требование Ценность
Минимальный поддерживаемый клиент Windows 2000 Профессиональный [классические приложения | Приложения UWP]
минимальный поддерживаемый сервер Windows 2000 Server [классические приложения | Приложения UWP]
целевая платформа Виндоус
Header profileapi.h (include Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

См. также

Получение меток времени с высоким разрешением

Концептуальный

GetSystemTimePreciseAsFileTime

KeQueryPerformanceCounter

QueryPerformanceFrequency

Справочные материалы

Время

Таймеры