timer.cpp

来自「linux下同一个进程中多个定时器实现。简单描述下定时器模块的实现」· C++ 代码 · 共 28 行

CPP
28
字号
#include "timer.h"
#include "timer_manager.h"
CTimer::CTimer(unsigned int vinterval,void (*vfunc)(CTimer *,void *),void *vdata,TimerType vtype):

	m_interval(vinterval),m_state(TIMER_IDLE),m_type(vtype),
	m_func(vfunc),m_data(vdata)
{}
void CTimer::start()
{
	CTimerManager::instance()->add_timer(this);
}
void CTimer::stop()
{
	CTimerManager::instance()->remove_timer(this);
}
void CTimer::reset(unsigned int vinterval)
{
	CTimerManager::instance()->remove_timer(this);
	m_interval=vinterval;
	CTimerManager::instance()->add_timer(this);
}
CTimer::~CTimer()
{
	if(m_state==TIMER_ALIVE)
		stop();
}


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?