主要用来取代crontab这样的定时器,能实现毫秒级的精度。
基于reactor线程(在task worker进程中使用系统定时器)
基于epoll的timeout机制实现
使用堆存放timer,提高检索效率
Timer常见问题:
1、传递参数
可以通过timer的第三个参数进行传递,也可以使用use 闭包
2、传递对象
onTimer是在调用tick方法的进程中回调(不能是匿名函数),因此可以直接使用在worker进程中声明的对象(局部变量无法访问)
3、timer的清除
tick方法会返回time_id,可以使用swoole_timer_clear清除指定的timer
登陆发表评论