Future::ignore
(PHP 8.6+, True Async 1.0)
php
public function ignore(): FutureMarkiert das Future als ignoriert. Wenn das Future mit einem Fehler abgeschlossen wird und der Fehler nicht behandelt wird, wird er nicht an den Handler für unbehandelte Ausnahmen des Event-Loops übergeben. Nützlich für "Fire-and-Forget"-Aufgaben, bei denen das Ergebnis keine Rolle spielt.
Rückgabewert
Future — gibt dasselbe Future für Methodenverkettung zurück.
Beispiele
Beispiel #1 Future-Fehler ignorieren
php
<?php
use Async\Future;
// Eine Aufgabe starten, deren Fehler uns nicht interessieren
\Async\async(function() {
// Diese Operation kann fehlschlagen
sendAnalytics(['event' => 'page_view']);
})->ignore();
// Der Fehler wird nicht an den Event-Loop-Handler weitergegebenBeispiel #2 Ignore mit Methodenverkettung verwenden
php
<?php
use Async\Future;
function warmupCache(array $keys): void {
foreach ($keys as $key) {
\Async\async(function() use ($key) {
$data = loadFromDatabase($key);
saveToCache($key, $data);
})->ignore(); // Cache-Fehler sind nicht kritisch
}
}
warmupCache(['user:1', 'user:2', 'user:3']);Siehe auch
- Future::catch — Einen Future-Fehler behandeln
- Future::finally — Callback bei Future-Abschluss