#include "timeapi.h" #pragma comment(lib, "winmm")
// DWORD __stdcall ThreadTest(LPVOID pThreadParam) { CLog mLog; int i = 100; timeBeginPeriod(1);//1表示1ms精度 while (i--) { mLog.WriteLog("%d", i); Sleep(1000); } timeEndPeriod(1); return 0; }
测试结果,不使用timeBeginPeriod 的Sleep精度是15ms,使用timeBeginPeriod 的Sleep精度是3ms
大幅提高精度但也大幅提高了cpu占用率,如果sleep更小还是误差大的,要用其他办法
标签:定时器,高精度,mLog,Sleep,timeBeginPeriod,精度 From: https://www.cnblogs.com/ckrgd/p/18028713