历史版本1:Process\Pool::on

设置进程池回调函数。

function Process\Pool::on(string $event, callable $function);

子进程启动

onWorkerStart回调函数,接受2个参数:

  1. Pool对象
  2. WorkerId当前工作进程的编号,底层会对子进程进行标号,范围是[0-$worker_num)
function onWorkerStart(Swoole\Process\Pool $pool, int $workerId)
{
    echo "Worker#{$workerId} is started\n";
}

子进程结束

onWorkerStop回调函数,与onWorkerStart参数一致。

消息接收

onMessage回调函数,收到外部投递的消息。

  1. Pool对象
  2. 消息数据内容
function onMessage(Swoole\Process\Pool $pool, string $data)
{
    var_dump($data);
}