TaskGroup::getErrors

(PHP 8.6+, True Async 1.0)

public TaskGroup::getErrors(): array

오류로 실패한 태스크의 예외(Throwable) 배열을 반환합니다. 배열 키는 spawn() 또는 spawnWithKey()의 태스크 키와 일치합니다.

이 메서드는 태스크 완료를 대기하지 않습니다 — 호출 시점에 사용 가능한 오류만 반환합니다.

반환값

array<int|string, Throwable> — 키는 태스크 식별자이고 값은 예외입니다.

예제

예제 #1 오류 확인

<?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();
});

처리되지 않은 오류

TaskGroup이 소멸될 때 처리되지 않은 오류가 남아있으면 소멸자가 이를 알립니다. 오류는 다음과 같은 경우에 처리된 것으로 간주됩니다:

참고