目标:实现和crontab相同功能的定时任务
具体效果:多少分钟活小时,定时执行一次某个函数(具体像数据统计,数据库备份等)
实现方式:用swoole开个子进程,使用守护模式运行这个进程
例子:如,每分钟向文件内写一次,执行一次php文件,文件关闭后依然可继续执行
优化:可写成具体的类,类里包含进程僵死后重启,或是启动失败重启
代码
相关函数:swoole_timer_tick(int$msec,callable$callback, [$mixed$param]) 参数一是时间,单位毫秒,参数二是回调函数
swoole_timer_after(int$after_time_ms,mixed$callback_function); 参数同上,对比上面的方法,该函数只执行一次
swoole_timer_clear(int$timer_id) 清楚定时器,用法同javascript setTimeout clearTimeout类似
网友评论