onWorkerStart
說(shuō)明:
callback Worker::$onWorkerStart
設(shè)置Worker子進(jìn)程啟動(dòng)時(shí)的回調(diào)函數(shù),每個(gè)子進(jìn)程啟動(dòng)時(shí)都會(huì)執(zhí)行。
注意:onWorkerStart是在子進(jìn)程啟動(dòng)時(shí)運(yùn)行的,如果開啟了多個(gè)子進(jìn)程($worker->count > 1
),每個(gè)子進(jìn)程運(yùn)行一次,則總共會(huì)運(yùn)行$worker->count
次。
回調(diào)函數(shù)的參數(shù)
$worker
即Worker對(duì)象
范例
<?php
use Workerman\Worker;
require_once __DIR__ . '/vendor/autoload.php';
$worker = new Worker('websocket://0.0.0.0:8484');
$worker->onWorkerStart = function(Worker $worker)
{
echo "Worker {$worker->id} starting...\n";
};
// 運(yùn)行worker
Worker::runAll();
提示
業(yè)務(wù)可以根據(jù)worker->id來(lái)區(qū)分不同的進(jìn)程從而執(zhí)行不同的業(yè)務(wù)邏輯,例如只在0號(hào)進(jìn)程執(zhí)行某個(gè)業(yè)務(wù),具體參考這里提示
除了使用匿名函數(shù)作為回調(diào),還可以參考這里使用其它回調(diào)寫法。