TaskGroup::suppressErrors
(PHP 8.6+, True Async 1.0)
public TaskGroup::suppressErrors(): void
Markiert alle aktuellen Fehler in der Gruppe als behandelt.
Wenn eine TaskGroup zerstoert wird, prueft sie auf unbehandelte Fehler. Wenn Fehler nicht behandelt wurden
(ueber all(), foreach oder suppressErrors()), signalisiert der Destruktor verlorene Fehler.
Der Aufruf von suppressErrors() ist eine explizite Bestaetigung, dass die Fehler behandelt wurden.
Beispiele
Beispiel #1 Fehler nach selektiver Behandlung unterdruecken
<?php
use Async\TaskGroup;
spawn(function() {
$group = new TaskGroup();
$group->spawn(fn() => "ok");
$group->spawn(function() { throw new \RuntimeException("Fehler 1"); });
$group->spawn(function() { throw new \LogicException("Fehler 2"); });
$group->seal();
$group->all(ignoreErrors: true);
// Fehler manuell behandeln
foreach ($group->getErrors() as $key => $error) {
log_error("Aufgabe $key: {$error->getMessage()}");
}
// Fehler als behandelt markieren
$group->suppressErrors();
});
Siehe auch
- TaskGroup::getErrors — Ein Array von Fehlern abrufen
- TaskGroup::all — Auf alle Aufgaben warten