TaskGroup::getResults

(PHP 8.6+, True Async 1.0)

public TaskGroup::getResults(): array

Devuelve un array de resultados de las tareas completadas exitosamente. Las claves del array coinciden con las claves asignadas mediante spawn() (auto-incremento) o spawnWithKey() (personalizada).

El método no espera a que las tareas se completen — solo devuelve los resultados disponibles en el momento de la llamada.

Valor de retorno

Un array<int|string, mixed> donde la clave es el identificador de la tarea y el valor es el resultado de la ejecución.

Ejemplos

Ejemplo #1 Obtener resultados después de all()

<?php

use Async\TaskGroup;

spawn(function() {
    $group = new TaskGroup();

    $group->spawnWithKey('user', fn() => ['name' => 'Alice']);
    $group->spawnWithKey('orders', fn() => [101, 102]);

    $group->seal();
    $group->all();

    $results = $group->getResults();
    // ['user' => ['name' => 'Alice'], 'orders' => [101, 102]]
});

Ejemplo #2 Los resultados no contienen errores

<?php

use Async\TaskGroup;

spawn(function() {
    $group = new TaskGroup();

    $group->spawn(fn() => "ok");
    $group->spawn(function() { throw new \RuntimeException("fallo"); });
    $group->spawn(fn() => "también ok");

    $group->seal();
    $group->all(ignoreErrors: true);

    $results = $group->getResults();
    // [0 => "ok", 2 => "también ok"]

    $errors = $group->getErrors();
    // [1 => RuntimeException("fallo")]

    $group->suppressErrors();
});

Ver también