Ждать HTTP-запрос асинхронного пула

У меня есть следующий код:

$client = new Client($conf);

//Pool of requests
$requests = function ($data) use ($client) {
yield function () use ($client, $pixel) {
....
}
}
//Pool of fullfilled
$fullfilled = function ($response, $index) use ($data) {
...
}
//Pool of rejected
$rejected = function ($reason, $index) use ($data) {
...
}

$pool = new Pool($client, $requests($data), [
'concurrency' => 10, 'fulfilled' => $fullfilled, 'rejected' => $rejected
]);

// Initiate the transfers and create a promise
$promise = $pool->promise();
$promise->wait();

я не usre, я использую «wait» правильно, но я хочу, чтобы процесс был асинхронным.
в настоящее время запрос зависает, и если я опускаю ожидание, то пул не будет отправляться вообще.
Идеи?

2

Решение

Документация Guzzle описывает, как сделать несколько одновременных запросов, используя обещания: http://docs.guzzlephp.org/en/latest/quickstart.html#concurrent-requests

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector