有个场景,客户端在断开连接以后,定时器照样执行,到时间自动销毁定时器
类似setTimeout
use \Workerman\Worker; use \Workerman\Lib\Timer; require_once __DIR__ . '/Workerman/Autoloader.php'; $task = new Worker(); $task->onWorkerStart = function($task) { // 注意,回调里面使用当前定时器id必须使用引用(&)的方式引入 $timer_id = Timer::add(1, function()use(&$timer_id) { static $i = 0; echo $i++."\n"; // 运行10次后删除定时器 if($i === 10) { Timer::del($timer_id); } }); }; // 运行worker Worker::runAll();
手册里说Timer::add 最后一个参数传false 是一次性定时器啊
nice
类似setTimeout
手册里说Timer::add 最后一个参数传false 是一次性定时器啊
nice