旗下导航:搜·么
当前位置:网站首页 > PHP框架 > Workerman > 正文

workerman中定时器不见效【workerman】,workerman,定时器,不生效

作者:搜搜PHP网发布时间:2019-12-13分类:Workerman浏览:123


导读:问题引出:把一个\Workerman\Lib\Timer放在start_gateway.php中实行,每两秒实行一次,每次实行起首纪录一段笔墨到文本文件。当以php...

问题引出:

把一个\Workerman\Lib\Timer放在start_gateway.php中实行,每两秒实行一次,每次实行起首纪录一段笔墨到文本文件。

当以 php start.php start 的体式格局运转的时刻是没有问题的,但当以php start.php start -d 的体式格局运转的时刻彷佛计时器并没有运转起来。

start_gateway.php代码以下

问题解决:

营业逻辑都要在onXXX回调中运转的(手册中有强调过),换句话说定时器不能在Worker::runAll();实行前运转。

由于Worker::runAll();实行前运转的代码都是属于主历程的,主历程不能有营业代码,主历程的营业代码会被子历程继续,致使与预期效果不符。

上述例子中能够放到onWorkerStart中运转定时器,发起放到start_businessworker.php中的$businessworker->onWorkerStart回调中。

相干文章教程引荐:workerman教程

以上就是workerman中定时器不见效的细致内容,更多请关注ki4网别的相干文章!

标签:workerman定时器不生效