Sese Framework  x.y.z
A cross-platform framework
载入中...
搜索中...
未找到
sese::Timer类 参考final

低精度计时器类 更多...

#include <Timer.h>

类 sese::Timer 继承关系图:

Public 类型

using Ptr = std::shared_ptr<Timer>
 

Public 成员函数

 ~Timer () noexcept
 定时器析构
 
TimerTask::Ptr delay (const std::function< void()> &callback, int64_t relative_timestamp, bool is_repeat=false) noexcept
 
void shutdown () noexcept
 结束定时器并终止定时线程
 
 Timer ()=default
 私有构造函数
 
void loop () noexcept
 

静态 Public 成员函数

static Timer::Ptr create (size_t number=TIMER_WHEEL_NUMBER) noexcept
 
static void cancelCallback (const std::weak_ptr< Timer > &weak_timer, const std::weak_ptr< TimerTask > &weak_task) noexcept
 

Public 属性

size_t number = 0
 
std::mutex mutex {}
 
Thread::Ptr thread = nullptr
 
std::atomic_bool isShutdown = false
 
std::atomic< int64_t > currentTimestamp = 0
 
std::list< TimerTask::Ptr > * timerTasks = nullptr
 

详细描述

低精度计时器类

成员类型定义说明

◆ Ptr

using sese::Timer::Ptr = std::shared_ptr<Timer>

构造及析构函数说明

◆ ~Timer()

Timer::~Timer ( )
noexcept

定时器析构

引用了 isShutdown, shutdown() , 以及 timerTasks.

◆ Timer()

sese::Timer::Timer ( )
default

私有构造函数

成员函数说明

◆ cancelCallback()

void Timer::cancelCallback ( const std::weak_ptr< Timer > & weak_timer,
const std::weak_ptr< TimerTask > & weak_task )
staticnoexcept

被这些函数引用 delay().

◆ create()

Timer::Ptr Timer::create ( size_t number = TIMER_WHEEL_NUMBER)
staticnoexcept

初始化一个定时器

参数
number定时器的时间轮轮片数量

引用了 MAKE_SHARED_PRIVATE.

◆ delay()

TimerTask::Ptr Timer::delay ( const std::function< void()> & callback,
int64_t relative_timestamp,
bool is_repeat = false )
noexcept

设定延时任务

参数
callback回调函数
relative_timestamp定时时间
is_repeat是否重复
返回
任务句柄

引用了 callback() , 以及 cancelCallback().

◆ loop()

void Timer::loop ( )
noexcept

◆ shutdown()

void Timer::shutdown ( )
noexcept

结束定时器并终止定时线程

引用了 isShutdown, sese::Thread::join() , 以及 thread.

被这些函数引用 ~Timer().

类成员变量说明

◆ currentTimestamp

std::atomic<int64_t> sese::Timer::currentTimestamp = 0

被这些函数引用 loop().

◆ isShutdown

std::atomic_bool sese::Timer::isShutdown = false

被这些函数引用 loop(), shutdown() , 以及 ~Timer().

◆ mutex

std::mutex sese::Timer::mutex {}

被这些函数引用 loop().

◆ number

size_t sese::Timer::number = 0

被这些函数引用 loop().

◆ thread

Thread::Ptr sese::Timer::thread = nullptr

被这些函数引用 shutdown().

◆ timerTasks

std::list<TimerTask::Ptr>* sese::Timer::timerTasks = nullptr

被这些函数引用 loop() , 以及 ~Timer().


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