函式名: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 版本符合要求。