TaskGroup::suppressErrors

(PHP 8.6+, True Async 1.0)

public TaskGroup::suppressErrors(): void

Marca todos los errores actuales del grupo como manejados.

Cuando un TaskGroup es destruido, verifica si hay errores no manejados. Si los errores no fueron manejados (mediante all(), foreach o suppressErrors()), el destructor señala errores perdidos. Llamar a suppressErrors() es una confirmación explícita de que los errores han sido manejados.

Ejemplos

Ejemplo #1 Suprimir errores después de manejo selectivo

<?php

use Async\TaskGroup;

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

    $group->spawn(fn() => "ok");
    $group->spawn(function() { throw new \RuntimeException("fallo 1"); });
    $group->spawn(function() { throw new \LogicException("fallo 2"); });

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

    // Manejar errores manualmente
    foreach ($group->getErrors() as $key => $error) {
        log_error("Tarea $key: {$error->getMessage()}");
    }

    // Marcar errores como manejados
    $group->suppressErrors();
});

Ver también