Hiva::CreateSteadyTimer
产品支持情况
产品  | 
是否支持  | 
|---|---|
x  | 
|
x  | 
|
√  | 
|
x  | 
|
x  | 
|
x  | 
功能说明
创建SteadyTimer定时器。
进程调用该接口,即创建并开始运行一个定时器。
- APP创建SteadyTimer过程中会订阅一个定时器的事件,定时器名称由APP名称+定时器+序列号生成,以保证唯一性。
 - APP通过Server/Client的Topic通信方式将定时器name和相关信息发送给定时器Server处理,等时间到期后,定时器Server发布该话题,通知到原APP,执行用户的回调函数。
 
函数原型
1 | Hiva::SteadyTimer Hiva::CreateSteadyTimer(const Hiva::WallDuration &steadyPeriod, const SteadyTimerCallback &steadyCallback, const std::string &steadyGroupName, const bool oneshot = false, const bool autostart = true)  | 
参数说明
参数名  | 
输入/输出  | 
说明  | 
||
|---|---|---|---|---|
steadyPeriod  | 
输入  | 
触发回调函数的周期,为框架标准的Duration类型。  | 
||
steadyCallback  | 
输入  | 
定时器到期后的回调函数,参数类型为SteadyTimerCallback,其中WallTimerEvent为: using SteadyTimerCallback = std::function<void (const SteadyTimerEvent &)>; 
  | 
||
steadyGroupName  | 
输入  | 
调用OpenHiva::Init时创建的线程组。如果为确定性组,则使用确定性调度框架;否则使用操作系统的调度框架。  | 
||
oneshot  | 
输入  | 
定时器的模式标识。 
  | 
||
autostart  | 
输入  | 
定时器的启动标识。 
  | 
返回值
返回Hiva::SteadyTimer的handle,后续可基于该handle进行start、stop等操作。
父主题: 定时器接口