现在的位置: 首页 > 综合 > 正文

多线程技术实现了一个简单的定时器类

2013年10月25日 ⁄ 综合 ⁄ 共 810字 ⁄ 字号 评论关闭


 

[cpp] view
pla
copy
  1. //
    头文件的定义
  2. #ifndef CTIMER_H_  
  3. #define CTIMER_H_  
  4. #include <Windows.h>  
  5. class CTimer  
  6. {  
  7. public:  
  8.  CTimer();  
  9.  ~CTimer();  
  10.  void StartTimer(unsigned int nElapse);  
  11.  void EndTimer();  
  12.  static DWORD WINAPI ThreadFunc (LPVOID pParam);  
  13. private:  
  14.  unsigned int m_Elapse;  
  15.  HANDLE m_hThread;  
  16. };  
  17. #endif  
  18.    
  19. /********CTimer.cpp***********/  
  20. #include <time.h>  
  21. #include <iostream>  
  22. #include "CTimer.h"  
  23. using namespace std;  
  24. CTimer::CTimer():m_Elapse(0), m_hThread(NULL)  
  25. {  
  26. }  
  27. CTimer::~CTimer()  
  28. {  
  29. }  
  30. void CTimer::StartTimer(unsigned int nElapse)  
  31. {  
  32.  m_Elapse = nElapse;  
  33.  m_hThread = CreateThread(NULL, 0, ThreadFunc, (LPVOID)(&m_Elapse), 0, NULL);  
  34. }  
  35. void CTimer::EndTimer()  
  36. {  
  37.  CloseHandle(m_hThread);  
  38. }  
  39. DWORD WINAPI CTimer::ThreadFunc(LPVOID pParam)  
  40. {  
  41.  time_t t1, t2;  
  42.  double  Diff = 0;  

抱歉!评论已关闭.