TaskSet::cancel
(PHP 8.6+, True Async 1.0)
php
public TaskSet::cancel(?Async\AsyncCancellation $cancellation = null): voidBricht alle laufenden Coroutinen ab und leert die Task-Warteschlange. Ruft implizit close() auf.
Parameter
cancellation : Abbruchgrund. Wenn null, wird eine Standard-AsyncCancellation erstellt.
Beispiele
Beispiel #1 Bedingter Abbruch
php
<?php
use Async\TaskSet;
spawn(function() {
$set = new TaskSet();
$set->spawn(fn() => longRunningTask1());
$set->spawn(fn() => longRunningTask2());
// Alle Tasks abbrechen
$set->cancel();
echo $set->isClosed() ? "geschlossen\n" : "nein\n"; // "geschlossen"
});Siehe auch
- TaskSet::close — Das Set schließen
- TaskSet::dispose — Den Scope des Sets zerstören