91 lines
2.1 KiB
C
91 lines
2.1 KiB
C
|
|
/*********************************************************************
|
|||
|
|
*
|
|||
|
|
* <EFBFBD><EFBFBD> <EFBFBD><EFBFBD>: TimerThread.h <EFBFBD><EFBFBD><EFBFBD>߳̿<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*
|
|||
|
|
* <EFBFBD><EFBFBD>Ȩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>: Shanghai Baosight Software Co., Ltd.
|
|||
|
|
*
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
|||
|
|
* :
|
|||
|
|
* :
|
|||
|
|
*
|
|||
|
|
* <EFBFBD>汾<EFBFBD><EFBFBD>ʷ
|
|||
|
|
* 1.0 2010-09-01 echo_li <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD>
|
|||
|
|
*
|
|||
|
|
*********************************************************************/
|
|||
|
|
#ifndef H_TimerThread_H
|
|||
|
|
#define H_TimerThread_H
|
|||
|
|
|
|||
|
|
#include <IceUtil/Time.h>
|
|||
|
|
#include <IceUtil/Thread.h>
|
|||
|
|
#include <log4cplus/LOG.h>
|
|||
|
|
#include <common/Macro.h>
|
|||
|
|
//#include <cold/GtmDefine.h>
|
|||
|
|
|
|||
|
|
|
|||
|
|
using namespace IceUtil;
|
|||
|
|
|
|||
|
|
struct TMRINFO; /* Forward declaration */
|
|||
|
|
|
|||
|
|
#define MAX_TASKNAME 48
|
|||
|
|
|
|||
|
|
#define MAX_TIMER_SEQ 256
|
|||
|
|
|
|||
|
|
/*********************************************************************
|
|||
|
|
* <EFBFBD><EFBFBD> <EFBFBD><EFBFBD>: TimerThread
|
|||
|
|
* <EFBFBD><EFBFBD>Ȩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>: Shanghai Baosight Software Co., Ltd.
|
|||
|
|
* <EFBFBD><EFBFBD> ְ <EFBFBD><EFBFBD>:
|
|||
|
|
* :
|
|||
|
|
* :
|
|||
|
|
* <EFBFBD>汾<EFBFBD><EFBFBD>ʷ
|
|||
|
|
* 1.0 2010-09-01 echo_li <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD>
|
|||
|
|
*
|
|||
|
|
*********************************************************************/
|
|||
|
|
class TimerThread:public Thread
|
|||
|
|
{
|
|||
|
|
public:
|
|||
|
|
TimerThread( struct TMRINFO *);
|
|||
|
|
virtual ~TimerThread();
|
|||
|
|
/**********************************************************************
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>: <EFBFBD>߳<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> run
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD> void
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ȡֵ<EFBFBD><EFBFBD>Χ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*
|
|||
|
|
* <EFBFBD>汾<EFBFBD><EFBFBD>ʷ
|
|||
|
|
* 1.0 2010-09-01 echo_li <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD>
|
|||
|
|
*
|
|||
|
|
**********************************************************************/
|
|||
|
|
void run();
|
|||
|
|
/**********************************************************************
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>: <EFBFBD>߳<EFBFBD>ֹͣ
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> cancel
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD> void
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ȡֵ<EFBFBD><EFBFBD>Χ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*
|
|||
|
|
* <EFBFBD>汾<EFBFBD><EFBFBD>ʷ
|
|||
|
|
* 1.0 2010-09-01 echo_li <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD>
|
|||
|
|
*
|
|||
|
|
**********************************************************************/
|
|||
|
|
void cancel();
|
|||
|
|
private:
|
|||
|
|
struct TMRINFO *ptm;
|
|||
|
|
int evtFreq;
|
|||
|
|
int keepRun;
|
|||
|
|
IceUtil::Time t;
|
|||
|
|
};
|
|||
|
|
//<2F><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>ᶨ<EFBFBD><E1B6A8>
|
|||
|
|
struct TMRINFO
|
|||
|
|
{
|
|||
|
|
char TaskName[MAX_TASKNAME];
|
|||
|
|
int SwitchFact;
|
|||
|
|
unsigned int DelayTime;
|
|||
|
|
int LenBuf;
|
|||
|
|
int TimeMethod;
|
|||
|
|
char *mlc_buff;
|
|||
|
|
Handle<TimerThread> tHDL;
|
|||
|
|
IceUtil::ThreadControl tTC;
|
|||
|
|
} ;
|
|||
|
|
|
|||
|
|
#endif
|
|||
|
|
|