如何使用QueryPerformanceCounter 決定經過的時間
QueryPerformanceCounter 是適用於Windows 系統的高解析度效能計數器API,可實現精確的計時測量。要實現它,請按照以下步驟操作:
包含必要的標頭:
#include <windows.h>
定義效能櫃檯變數:
實作 StartCounter功能:
實現GetCounter 函數:
用法範例:
程式碼片段:
double PCFreq = 0.0; __int64 CounterStart = 0; void StartCounter() { LARGE_INTEGER li; if (!QueryPerformanceFrequency(&li)) cout << "QueryPerformanceFrequency failed!\n"; PCFreq = double(li.QuadPart) / 1000.0; QueryPerformanceCounter(&li); CounterStart = li.QuadPart; } double GetCounter() { LARGE_INTEGER li; QueryPerformanceCounter(&li); return double(li.QuadPart - CounterStart) / PCFreq; } int main() { StartCounter(); Sleep(1000); cout << GetCounter() << "\n"; return 0; }
此程式碼片段輸出接近1000 的值,示範如何使用QueryPerformanceCounter 進行精確的計時測量。
以上是如何在 Windows 中使用 QueryPerformanceCounter 準確測量經過的時間?的詳細內容。更多資訊請關注PHP中文網其他相關文章!