Qu'est-ce que QueryPerformanceCounter et comment l'utiliser
Pour améliorer la précision du timing d'une classe Timer, QueryPerformanceCounter peut être une option fiable, en particulier lorsque vous recherchez une résolution en microsecondes.
Mise en œuvre QueryPerformanceCounter
Pour utiliser QueryPerformanceCounter, suivez ces étapes :
Initialisez PCFreq :
LARGE_INTEGER li; if (!QueryPerformanceFrequency(&li)) cout << "QueryPerformanceFrequency failed!\n"; PCFreq = double(li.QuadPart) / 1000.0;
Démarrez le Counter :
QueryPerformanceCounter(&li); CounterStart = li.QuadPart;
Obtenir l'heure Elapsed :
double GetCounter() { QueryPerformanceCounter(&li); return double(li.QuadPart - CounterStart) / PCFreq; }
StartCounter(); Sleep(1000); cout << GetCounter() << "\n"; // Output: approximately 1000
En ajustant la division de PCFreq vous pouvez contrôler l'unité de temps renvoyé :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!