TaskSet::spawnWithKey

(PHP 8.6+, True Async 1.0)

public TaskSet::spawnWithKey(string|int $key, callable $task, mixed ...$args): void

Добавляет callable в набор с заданным ключом. Ключ используется в массиве результатов и при итерации через foreach.

Параметры

key
Ключ результата. Должен быть уникальным в пределах набора.
task
Callable для выполнения.
args
Аргументы, передаваемые в callable.

Ошибки

Примеры

Пример #1 Именованные задачи

<?php

use Async\TaskSet;

spawn(function() {
    $set = new TaskSet();

    $set->spawnWithKey('user',   fn() => fetchUser($id));
    $set->spawnWithKey('orders', fn() => fetchOrders($id));

    $set->seal();
    $data = $set->joinAll()->await();

    echo $data['user']['name'];
    echo count($data['orders']);
});

См. также