Process\Pool->getProcess

获取当前工作进程对象。返回Swoole\Process对象。

需要 swoole 版本 >= 4.2.0

function Process\Pool->getProcess() : Process;
  • 必须在start之后,在工作进程的onWorkerStart或其他回调函数中调用
  • 返回的Process对象是单例模式,在工作进程中重复调用getProcess()将返回同一个对象

使用实例

$workerNum = 10;
$pool = new Swoole\Process\Pool($workerNum);

$pool->on("WorkerStart", function ($pool, $workerId) {
    $process = $pool->getProcess();
    $process->exec("/bin/sh", ["ls", '-l']);
});

$pool->on("WorkerStop", function ($pool, $workerId) {
    echo "Worker#{$workerId} is stopped\n";
});

$pool->start();

  • J.M. Yuan

    releases目前最新的是V4.1.2 , 4.2几时发布啊? pool主进程退出了,子进程依然还在,想通过getProcess()->exit()退出子进程,但需要4.2的版本才支持。

  • 东风

    给对swoole感兴趣的朋友推荐一个swoole学习群:820469789,群里面每天会讲解swoole项目,还有大牛答疑解惑,学习与快乐同在。我们群是关于swoole学习的,希望大家多多交流。即使是小白也没有关系,只要加入QQ群,就可以获取一些免费的学习资料。