函数名:Fiber::isTerminated()
适用版本:PHP 8.1.0 及以上版本
用法:该函数用于检查一个 Fiber 对象是否已经终止(即执行完毕或被取消)。
示例:
$fiber = new Fiber(function () {
echo "Fiber started\n";
Fiber::suspend();
echo "Fiber resumed\n";
});
$fiber->start();
$fiber->resume();
if ($fiber->isTerminated()) {
echo "Fiber is terminated\n";
} else {
echo "Fiber is not terminated\n";
}
// 输出结果:
// Fiber started
// Fiber is terminated
在上面的示例中,我们创建了一个 Fiber 对象并启动它。然后在 Fiber::suspend()
处暂停了该 Fiber 的执行,并通过 Fiber::resume()
恢复了它的执行。
接下来,我们使用 Fiber::isTerminated()
函数来检查该 Fiber 是否已经终止。由于我们在 Fiber::suspend()
后没有再恢复执行,所以该 Fiber 已经终止,因此输出结果为 "Fiber is terminated"。
注意:在 PHP 8.1.0 之前的版本中,Fiber::isTerminated()
函数是不存在的,使用该函数需要确保你的 PHP 版本符合要求。