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\Coroutine\WaitGroup->wait(int $timeout = -1)
The max time waiting for the group of coroutines to be finished.
if success, it returns TRUE, otherwise it returns FALSE.
Wait for all the coroutines to be finished. You can set a max timeout value. By default the main coroutine is waiting infinitely.
<?php
declare(strict_types=1);
use Swoole\Coroutine\WaitGroup;
Co\run(function() {
$wg = new WaitGroup();
go(function () use ($wg) {
$wg->add();
co::sleep(3);
$wg->done();
});
go(function () use ($wg) {
$wg->add();
co::sleep(7);
$wg->done();
});
$wg->wait(10);
});