TaskGroup::getErrors

(PHP 8.6+, True Async 1.0)

public TaskGroup::getErrors(): array

Restituisce un array di eccezioni (Throwable) dai task che sono falliti con un errore. Le chiavi dell’array corrispondono alle chiavi dei task assegnate tramite spawn() o spawnWithKey().

Il metodo non attende il completamento dei task — restituisce solo gli errori disponibili al momento della chiamata.

Valore di ritorno

Un array<int|string, Throwable> dove la chiave è l’identificatore del task e il valore è l’eccezione.

Esempi

Esempio #1 Visualizzazione degli errori

<?php

use Async\TaskGroup;

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

    $group->spawnWithKey('api', function() {
        throw new \RuntimeException("Connection timeout");
    });
    $group->spawn(fn() => "ok");

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

    foreach ($group->getErrors() as $key => $error) {
        echo "$key: {$error->getMessage()}\n";
    }
    // api: Connection timeout

    $group->suppressErrors();
});

Errori non gestiti

Se rimangono errori non gestiti quando un TaskGroup viene distrutto, il distruttore lo segnala. Gli errori sono considerati gestiti se:

Vedi anche