定时器设置时间长啦就不起作用问题

woaishenyanyan

我定时器设置啦如果是几秒或者几十秒之后运行是没有问题的,但是如果设置时间稍微长啦点就不起作用,这个是什么问题导致的呢
我的代码:self::$timerid=\Workerman\Lib\Timer::add(intval($message_data), array("Events", 'updateFans'), array(), false);

4866 1 0
1个回答

walkor

目前没人反馈过这个问题。感觉是参数传错了或者没运行到或者运行到了你没察觉。
你可以把业务逻辑都去掉,onWorkerStart里面只写一句
self::$timerid=\Workerman\Lib\Timer::add(10000, array("Events", 'updateFans'), array(), false);
试下。
updateFans 方法实现也是空的,只记录一个日志,日志路径写绝对路径。

  • laipeng 2018-12-19

    我也遇到同样问题了,20000的时候 都很少有成功的情况了。几百都没问题

  • wanglong126 2021-07-16

    我也遇到了同样的问题,时间长的话本地win环境正常,linux就不执行,一两分钟的话,win和linux都正常

  • wanglong126 2021-07-16

    @8037:我按照大佬的方法,做了详细日志,然后以debug方式启动项目,运行正常,然后再正常启动项目,也都运行正常了,再观察吧

年代过于久远,无法发表回答
🔝