onWorkerStart

說明:

callback Worker::$onWorkerStart

設定 Worker 子進程啟動時的回調函數,每個子進程啟動時都會執行。

注意:onWorkerStart 是在子進程啟動時運行的,如果開啟了多個子進程($worker->count > 1),每個子進程運行一次,則總共會運行 $worker->count 次。

回調函數的參數

$worker

即 Worker 物件

範例

<?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";
};
// 運行 worker
Worker::runAll();

提示
業務可以根據 worker->id 來區分不同的進程從而執行不同的業務邏輯,例如只在 0 號進程執行某個業務,具體 參考這裡

提示
除了使用匿名函數作為回調,還可以 參考這裡 使用其它回調寫法。