Future::completed
(PHP 8.6+, True Async 1.0)
public static function completed(mixed $value = null): Future
Crea un Future ya completado con el valor especificado. Este es un método de fábrica que devuelve un Future que contiene inmediatamente un resultado. Útil para devolver un valor ya conocido desde funciones que retornan un Future.
Parámetros
value — el valor con el que se completará el Future. Por defecto es null.
Valor de retorno
Future — un Future completado con el valor especificado.
Ejemplos
Ejemplo #1 Crear un Future con un valor listo
<?php
use Async\Future;
$future = Future::completed(42);
var_dump($future->isCompleted()); // bool(true)
var_dump($future->await()); // int(42)
Ejemplo #2 Uso en una función que devuelve un Future
<?php
use Async\Future;
function fetchData(string $key): Future {
// Si los datos están en caché, devolver inmediatamente
$cached = getFromCache($key);
if ($cached !== null) {
return Future::completed($cached);
}
// De lo contrario, iniciar una operación asíncrona
return \Async\async(function() use ($key) {
return loadFromDatabase($key);
});
}
$result = fetchData('user:1')->await();
echo "Resultado: $result\n";
Ver también
- Future::failed — Crear un Future con un error
- Future::__construct — Crear un Future mediante FutureState
- Future::await — Esperar el resultado