函式名稱:parallel\Sync::wait()
適用版本:PHP 7.2.0 以上
函式描述:parallel\Sync::wait() 函式用於等待並獲取併發任務的結果。
用法示例:
- 基本用法:
<?php
$sync = new parallel\Sync();
$future = $sync->run(function() {
// 在這裡執行併發任務
return "Hello, Parallel PHP!";
});
$result = $sync->wait($future);
echo $result; // 輸出:Hello, Parallel PHP!
?>
- 帶有超時設定的用法:
<?php
$sync = new parallel\Sync();
$future = $sync->run(function() {
// 在這裡執行併發任務
sleep(3);
return "Hello, Parallel PHP!";
});
try {
$result = $sync->wait($future, 2); // 設定超時時間為 2 秒
echo $result;
} catch (parallel\TimeoutException $e) {
echo "任務超時!";
}
?>
在上面的示例中,我們使用 parallel\Sync::run() 方法建立了一個併發任務,並使用 parallel\Sync::wait() 方法等待任務的完成並獲取結果。第一個示例中沒有設定超時時間,因此會一直等待任務完成。第二個示例中設定了超時時間為 2 秒,如果任務在超時時間內未完成,會丟擲 parallel\TimeoutException 異常。
注意:在使用 parallel\Sync::wait() 函式時,需要確保併發任務已經執行並返回結果,否則該函式會一直等待任務完成。