Join 4,000+ others and never miss out on new tips, tutorials, and more.
4.x is outdated, please check the latest version 25.x
Latest version:
pecl install openswoole-25.2.0
<?php Swoole\Process\Manager->addBatch (int $workerNum, callable $func, bool $enableCoroutine = false)
How many processes to start to execute the function.
The function to be executed in the process.
If enable coroutine support within the process
Add multiple worker process to execute the function.
<?php
$pm = new Swoole\Process\Manager();
$atomic = new Atomic(0);
$pm->addBatch(1, function (Pool $pool, int $workerId) use ($atomic) {
usleep(100000);
$atomic->wakeup();
});
$pm->add(function (Pool $pool, int $workerId) use ($atomic) {
$atomic->wait(1.5);
$pool->shutdown();
});
$pm->start();