Coroutine::getResult
(PHP 8.6+, True Async 1.0)
public Coroutine::getResult(): mixed
Gibt das Ergebnis der Coroutine-Ausfuehrung zurueck. Wenn die Coroutine noch nicht abgeschlossen ist, wird null zurueckgegeben.
Wichtig: Diese Methode wartet nicht auf den Abschluss der Coroutine. Verwenden Sie await() zum Warten.
Rueckgabewert
mixed – das Coroutine-Ergebnis oder null, wenn die Coroutine noch nicht abgeschlossen ist.
Beispiele
Beispiel #1 Grundlegende Verwendung
<?php
use function Async\spawn;
use function Async\await;
$coroutine = spawn(function() {
return "test result";
});
// Vor dem Abschluss
var_dump($coroutine->getResult()); // NULL
// Auf Abschluss warten
await($coroutine);
var_dump($coroutine->getResult()); // string(11) "test result"
Beispiel #2 Pruefung mit isCompleted()
<?php
use function Async\spawn;
use function Async\suspend;
$coroutine = spawn(fn() => 42);
suspend(); // Coroutine abschliessen lassen
if ($coroutine->isCompleted()) {
echo "Ergebnis: " . $coroutine->getResult() . "\n";
}
Siehe auch
- Coroutine::getException – Die Ausnahme abrufen
- Coroutine::isCompleted – Abschluss pruefen
- await() – Auf das Ergebnis warten