TaskGroup::seal

(PHP 8.6+, True Async 1.0)

public TaskGroup::seal(): void

Scelle le groupe. Toute tentative d’utilisation de spawn() ou spawnWithKey() lancera une exception. Les coroutines deja en cours d’execution et les taches en file d’attente continuent de s’executer.

Les appels repetes sont sans effet.

Exemples

Exemple #1 Utilisation de base

<?php

use Async\TaskGroup;

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

    $group->spawn(fn() => "task");
    $group->seal();

    try {
        $group->spawn(fn() => "another task");
    } catch (\Async\AsyncException $e) {
        echo $e->getMessage() . "\n";
        // "Cannot spawn tasks on a sealed TaskGroup"
    }
});

Voir aussi