国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

Gateway中想使用Timer,請(qǐng)問Timer該從哪里開始調(diào)用?

osacar

在chat中想加一個(gè)timer來定時(shí)執(zhí)行一些業(yè)務(wù)。
請(qǐng)問從Event.php里哪個(gè)入口開始執(zhí)行好?
從onWorkerStart這里么?

4289 6 0
6個(gè)回答

latin

我覺得如果不知道在那里加,那就在onWorkerStart里面加就好

  • 暫無評(píng)論
damao

如果要給每個(gè)client_id設(shè)置一個(gè)定時(shí)器,那就是在onConnect或者onMessage入口設(shè)置。
如果是全局的定時(shí)器,就在onWorkerStart里面設(shè)置

  • 暫無評(píng)論
walkor 打賞

@latin @damao 贊

  • 暫無評(píng)論
osacar

@damao @walkor
那我是應(yīng)該start_businessworker.php里添加么?還是加在Event.php里?

use \Workerman\Worker;
use \GatewayWorker\BusinessWorker;
use \Workerman\Autoloader;

// 自動(dòng)加載類
require_once __DIR__ . '/../../Workerman/Autoloader.php';
Autoloader::setRootPath(__DIR__);

// bussinessWorker 進(jìn)程
$worker = new BusinessWorker();
// worker名稱
$worker->name = 'ChatBusinessWorker';
// bussinessWorker進(jìn)程數(shù)量
$worker->count = 4;
// 服務(wù)注冊(cè)地址
$worker->registerAddress = '127.0.0.1:1236';

//定時(shí)器
$worker->onWorkerStart = function($task)
{
    // 每2.5秒執(zhí)行一次
    $time_interval = 2.5;
    Timer::add($time_interval, function()
    {
        echo "task run\n";
    });
};

// 如果不是在根目錄啟動(dòng),則運(yùn)行runAll方法
if(!defined('GLOBAL_START'))
{
    Worker::runAll();
}
  • 暫無評(píng)論
walkor 打賞

都可以

  • 暫無評(píng)論
osacar

@walkor

如果是在Event.php里添加的話,是不是參照里面的onMessage()方法來添加,看到里面的都是靜態(tài)方法。
public static function onWorkerStart(){
// 每2.5秒執(zhí)行一次
$time_interval = 2.5;
Timer::add($time_interval, function()
{
echo "task run\n";
});
}
請(qǐng)問是不是如上代碼?多謝指正。

  • 暫無評(píng)論
年代過于久遠(yuǎn),無法發(fā)表回答
??