函式名稱: parallel\Future::cancel()
適用版本: PHP 7.2.0 及以上版本
函式用法:
parallel\Future::cancel()
方法用於取消一個正在執行的並行任務 (parallel task)。當任務被取消後,它將不會繼續執行,並且返回一個布林值表示取消是否成功。
語法:
public bool parallel\Future::cancel()
引數: 該方法沒有接受任何引數。
返回值:
- 如果任務成功取消,則返回
true
。 - 如果任務已經完成或已經被取消,則返回
false
。
示例:
<?php
$executor = new parallel\Runtime();
$future = $executor->run(function(){
// 執行一些耗時的操作
sleep(5);
return "任務已完成";
});
// 稍等一會兒,然後取消任務
sleep(2);
$result = $future->cancel();
if ($result) {
echo "任務已成功取消";
} else {
echo "任務無法取消";
}
在上面的示例中,我們使用 parallel\Runtime
類建立了一個並行執行器,並使用 run()
方法啟動一個並行任務。然後,我們等待2秒鐘後取消了任務,並根據 cancel()
方法的返回值列印出相應的訊息。
請注意,parallel\Future::cancel()
方法只能取消正在執行的任務。如果任務已經完成或已經被取消,呼叫該方法將返回 false
。