共用方式為


QueryPerformanceCounter 函式 (profileapi.h)

擷取性能計數器的目前值,這是高解析度 (<1us) 時間戳,可用於時間間隔測量。

語法

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 應用程式]
目標平台 Windows
標頭 profileapi.h (包含 Windows.h)
程式庫 Kernel32.lib
DLL Kernel32.dll

另請參閱

取得高解析度時間戳記

概念

GetSystemTimePreciseAsFileTime

KeQueryPerformanceCounter

QueryPerformanceFrequency

參考

時間

計時器