windows获取时间差毫秒级

来源:互联网 发布:石油钻井软件 编辑:程序博客网 时间:2024/05/17 06:15
 //精确时钟查询。
  void TestHighTimer(void)
  {
         //
         LARGE_INTEGER nFreq;
         LARGE_INTEGER nLastTime1;
         LARGE_INTEGER nLastTime2;
 
         //获取是否支持精确定时器。
        if (QueryPerformanceFrequency(&nFreq))
         {
               //
               const int nBufSize = 256;
               TCHAR chBuf[nBufSize];
        
               //显示定时器的频率。
               wsprintf(chBuf,_T("LastTime=%I64d/r/n"),nFreq);
               OutputDebugString(chBuf);
 
               //获取定时器的值。
              QueryPerformanceCounter(&nLastTime1);
               wsprintf(chBuf,_T("LastTime=%I64d/r/n"),nLastTime1);
               OutputDebugString(chBuf);
              
               Sleep(0);
 
               //获取定时器的值。
              QueryPerformanceCounter(&nLastTime2);
               wsprintf(chBuf,_T("LastTime=%I64d/r/n"),nLastTime2);
               OutputDebugString(chBuf);
 
 
               //计算时间是花费多少秒。
               float fInterval = nLastTime2.QuadPart - nLastTime1.QuadPart;
               swprintf(chBuf,nBufSize,_T("花费:%f/r/n"),fInterval/(float)nFreq.QuadPart);
               OutputDebugString(chBuf);
         }
         
  }
原创粉丝点击