1 Star 0 Fork 344

seasky100 / awtk

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
timer_t.md 5.12 KB
一键复制 编辑 原始数据 按行查看 历史
xianjimli 提交于 2019-12-14 13:25 . update docs

timer_t

概述

定时器系统。

本定时器精度较低,最高精度为1000/FPS,如果需要高精度的定时器,请用OS提供的定时器。

示例:

static ret_t my_on_timer(const timer_info_t* info) {
widget_t* widget = WIDGET(info->ctx);
...
return RET_REPEAT;
}

...

timer_add(my_on_timer, widget, 1000);

在非GUI线程请用timer_queue。


函数

函数名称 说明
timer_add 增加一个timer。
timer_count 返回timer的个数。
timer_modify 修改指定的timer的duration,修改之后定时器重新开始计时。
timer_next_time 返回最近的timer到期时间。
timer_queue 用于非GUI线程增加一个timer,本函数向主循环的事件队列中发送一个增加timer的请求。
timer_remove 删除指定的timer。
timer_reset 重置指定的timer,重置之后定时器重新开始计时。
timer_set_on_destroy 设置一个回调函数,在timer被销毁时调用(方便脚本语言去释放回调函数)。

timer_add 函数


  • 函数功能:

增加一个timer。

  • 函数原型:
uint32_t timer_add (timer_func_t on_timer, void* ctx, uint32_t duration);
  • 参数说明:
参数 类型 说明
返回值 uint32_t 返回timer的ID,TK_INVALID_ID表示失败。
on_timer timer_func_t timer回调函数。
ctx void* timer回调函数的上下文。
duration uint32_t 时间。

timer_count 函数


  • 函数功能:

返回timer的个数。

  • 函数原型:
uint32_t timer_count ();
  • 参数说明:
参数 类型 说明
返回值 uint32_t 返回timer的个数。

timer_modify 函数


  • 函数功能:

修改指定的timer的duration,修改之后定时器重新开始计时。

  • 函数原型:
ret_t timer_modify (uint32_t timer_id, uint32_t duration);
  • 参数说明:
参数 类型 说明
返回值 ret_t 返回RET_OK表示成功,否则表示失败。
timer_id uint32_t timerID。
duration uint32_t 新的时间。

timer_next_time 函数


  • 函数功能:

返回最近的timer到期时间。

  • 函数原型:
uint32_t timer_next_time ();
  • 参数说明:
参数 类型 说明
返回值 uint32_t 返回最近的timer到期时间。

timer_queue 函数


  • 函数功能:

用于非GUI线程增加一个timer,本函数向主循环的事件队列中发送一个增加timer的请求。

timer回调函数,回调函数返回RET_REPEAT,则下次继续执行,否则自动移出。

  • 函数原型:
ret_t timer_queue (timer_func_t , void* ctx, uint32_t duration);
  • 参数说明:
参数 类型 说明
返回值 ret_t 返回RET_OK表示成功,否则表示失败。
timer_func_t r
ctx void* timer回调函数的上下文。
duration uint32_t 时间。

timer_remove 函数


  • 函数功能:

删除指定的timer。

  • 函数原型:
ret_t timer_remove (uint32_t timer_id);
  • 参数说明:
参数 类型 说明
返回值 ret_t 返回RET_OK表示成功,否则表示失败。
timer_id uint32_t timerID。

timer_reset 函数


  • 函数功能:

重置指定的timer,重置之后定时器重新开始计时。

  • 函数原型:
ret_t timer_reset (uint32_t timer_id);
  • 参数说明:
参数 类型 说明
返回值 ret_t 返回RET_OK表示成功,否则表示失败。
timer_id uint32_t timerID。

timer_set_on_destroy 函数


  • 函数功能:

设置一个回调函数,在timer被销毁时调用(方便脚本语言去释放回调函数)。

  • 函数原型:
ret_t timer_set_on_destroy (uint32_t timer_id, tk_destroy_t on_destroy, void* on_destroy_ctx);
  • 参数说明:
参数 类型 说明
返回值 ret_t 返回RET_OK表示成功,否则表示失败。
timer_id uint32_t timerID。
on_destroy tk_destroy_t 回调函数。
on_destroy_ctx void* 回调函数上下文。
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C
1
https://gitee.com/seasky100/awtk.git
git@gitee.com:seasky100/awtk.git
seasky100
awtk
awtk
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891