下面设计了一个轻量的高精度定时器类,主要使用timeGetTime()函数:
DWORD timeGetTime(VOID);
返回系统时间,以毫秒为单位。系统时间是从系统启动到调用函数时所经过的毫秒数。注意,这个值是32位的,会在0到2^32之间循环,约49.71天。
代码设计非常简单,需要配合一个while(true)循环来使用, 这个循环你当然可以放到一个线程中:
#include <iostream>
#include<Windows.h>
#include <Mmsystem.h>
#pragma comment(lib, "Winmm.lib")
class CTimer
{
public:
CTimer()
{
m_nSpace = 0;
m_fLeave = 0;
m_dwRepeat = 0;
}
void StartTimer(float nSapce, DWORD dwRepeat)
{
m_nSpace = nSapce;
m_fLeave = nSapce ;
m_dwR