Coroutine::getResult

(PHP 8.6+, True Async 1.0)

public Coroutine::getResult(): mixed

Devuelve el resultado de la ejecución de la coroutine. Si la coroutine aún no ha completado, devuelve null.

Importante: este método no espera a que la coroutine se complete. Use await() para esperar.

Valor de retorno

mixed – el resultado de la coroutine o null si la coroutine aún no ha completado.

Ejemplos

Ejemplo #1 Uso básico

<?php

use function Async\spawn;
use function Async\await;

$coroutine = spawn(function() {
    return "test result";
});

// Antes de completar
var_dump($coroutine->getResult()); // NULL

// Esperar a que complete
await($coroutine);

var_dump($coroutine->getResult()); // string(11) "test result"

Ejemplo #2 Verificación con isCompleted()

<?php

use function Async\spawn;
use function Async\suspend;

$coroutine = spawn(fn() => 42);

suspend(); // dejar que la coroutine complete

if ($coroutine->isCompleted()) {
    echo "Result: " . $coroutine->getResult() . "\n";
}

Ver también