acl  3.5.3.0
acl::event_timer类 参考abstract

#include <event_timer.hpp>

+ 类 acl::event_timer 继承关系图:
+ acl::event_timer 的协作图:

Public 成员函数

 event_timer (bool keep=false)
 
virtual ~event_timer ()
 
virtual void destroy (void)
 
bool empty (void) const
 
size_t length (void) const
 
void keep_timer (bool on)
 
bool keep_timer (void) const
 
int clear (void)
 
virtual void timer_callback (unsigned int id)=0
 
long long int set_task (unsigned int id, long long int delay)
 
long long int del_task (unsigned int id)
 
long long int trigger (void)
 
long long int min_delay (void) const
 

Protected 属性

long long int min_delay_
 
long long int present_
 

额外继承的成员函数

- Protected 成员函数 继承自 acl::acl::noncopyable
 noncopyable ()
 
 ~noncopyable ()
 

详细描述

在文件 event_timer.hpp11 行定义.

构造及析构函数说明

◆ event_timer()

acl::event_timer::event_timer ( bool  keep = false)

构造函数

参数
keep{bool} 该定时器是否允许自动重启

◆ ~event_timer()

virtual acl::event_timer::~event_timer ( )
virtual

成员函数说明

◆ clear()

int acl::event_timer::clear ( void  )

清空定时器里的定时任务

返回
{int} 被清除的定时任务的个数

◆ del_task()

long long int acl::event_timer::del_task ( unsigned int  id)

◆ destroy()

virtual void acl::event_timer::destroy ( void  )
inlinevirtual

当定时器里的任务数为空时的回调函数, 子类可以在其中释放,一旦该函数被调用, 则意味着该定时器及其中的所有定时任务都从 定时器集合中被删除 该函数被触发的条件有三个: 1) 定时器所有的任务数为 0 时 2) 当没有设置重复定时器且该定时器中有一个定时任务被触发后 3) 当 del_timer(event_timer*) 被调用后

在文件 event_timer.hpp31 行定义.

31 {}

◆ empty()

bool acl::event_timer::empty ( void  ) const
inline

定时器里的任务是否为空

返回
{bool}

在文件 event_timer.hpp37 行定义.

38  {
39  return tasks_.empty();
40  }

◆ keep_timer() [1/2]

void acl::event_timer::keep_timer ( bool  on)

该定时器是否是自动重启的

参数
on{bool}

◆ keep_timer() [2/2]

bool acl::event_timer::keep_timer ( void  ) const
inline

判断该定时器是否是自动重启的

返回
{bool}

在文件 event_timer.hpp61 行定义.

62  {
63  return keep_;
64  }

◆ length()

size_t acl::event_timer::length ( void  ) const
inline

定时器里的任务个数

返回
{size_t}

在文件 event_timer.hpp46 行定义.

47  {
48  return length_;
49  }

◆ min_delay()

long long int acl::event_timer::min_delay ( void  ) const
inline

在文件 event_timer.hpp119 行定义.

120  {
121  return min_delay_;
122  }
long long int min_delay_

◆ set_task()

long long int acl::event_timer::set_task ( unsigned int  id,
long long int  delay 
)

◆ timer_callback()

virtual void acl::event_timer::timer_callback ( unsigned int  id)
pure virtual

子类必须实现此回调函数,注:子类或调用者禁止在 timer_callback 内部调用 event_timer 的析构 函数,否则将会酿成大祸

参数
id{unsigned int} 对应某个任务的 ID 号

◆ trigger()

long long int acl::event_timer::trigger ( void  )

触发所有到时的定时任务

返回
{long lont int} 下一个将要到时的任务

类成员变量说明

◆ min_delay_

long long int acl::event_timer::min_delay_
protected

在文件 event_timer.hpp130 行定义.

◆ present_

long long int acl::event_timer::present_
protected

在文件 event_timer.hpp131 行定义.


该类的文档由以下文件生成: