定时器的使用
timer.lua
对skynet的定时器做了基础封装,提供了注销,延时,循环次数,获得下次触发的剩余时间等等功能。
注册
new(expire,times,callback,…)
函数作用域:M 对象的成员函数
函数名称:new
描述: 创建一个定时器对象
参数:
- expire (number): 过期时间 100等于1秒
- times (number): 次数,0表示循环触发
- callback (function): 回调函数
- … 回调参数cancel()
函数作用域:M:new 对象的成员函数
函数名称:cancel
描述: 取消定时器after_next
函数作用域:M:new 对象的成员函数
函数名称:after_next
描述: 之后下一次 : 回调函数执行完,再注册下一次,默认先注册下一次再执行回调extend
函数作用域:M:new 对象的成员函数
函数名称:extend
描述: 延长定时器
参数:
- ex_expire (number): 延长时间 100等于1秒remain_expire
函数作用域:M:new 对象的成员函数
函数名称:remain_expire
描述: 剩余触发时间
timer_point
使用基础的timer.lua模块,封装的整点报时功能,功能的概念类似闹钟,比如设置每天下午2点半第30秒,就只需要这样设置。
1 |
|
目前支持设置的时间刻度有:
1 |
|
new(type)
函数作用域:M 对象的成员函数
函数名称:new
描述: 创建整点报时对象
参数:
- type (number): 时间刻度类型set_month
函数作用域:M:new 对象的成员函数
函数名称:set_month
描述: 指定几月,如果刻度不是每年的话,这个设置没有作用
参数:
- month (number): 月份 1-12set_day
函数作用域:M:new 对象的成员函数
函数名称:set_day
描述: 每月第几天,超过适配到最后一天,比如设置31天,这月只有30天,适配到30天触发。
参数:
- day (number): 天数 1-31set_hour
函数作用域:M:new 对象的成员函数
函数名称:set_hour
描述: 几时
参数:
- hour (number): 几时 0-23set_min
函数作用域:M:new 对象的成员函数
函数名称:set_min
描述: 几分
参数:
- min (number): 几分 0-59set_sec
函数作用域:M:new 对象的成员函数
函数名称:set_sec
描述: 几秒
参数:
- sec (number): 几秒 0-59set_wday
函数作用域:M:new 对象的成员函数
函数名称:set_wday
描述: 周几(仅仅设置每周有效)
参数:
- wday (number): 周几 1-7 星期天为 1set_yday
函数作用域:M:new 对象的成员函数
函数名称:set_yday
描述: 一年第几天(仅仅设置每年第几天有效)
参数:
- yday (number): 第几天 1-366 超过适配到最后一天。builder
函数作用域:M:new 对象的成员函数
函数名称:builder
描述: 构建。
参数:
- callback (function): 回调函数。
- … (any): 回调参数。