\GuzzleHttpPool

Sends an iterator of requests concurrently using a capped pool size.

The pool will read from an iterator until it is cancelled or until the iterator is consumed. When a request is yielded, the request is sent after applying the "request_options" request options (if provided in the ctor).

When a function is yielded by the iterator, the function is provided the "request_options" array that should be merged on top of any existing options, and the function MUST then return a wait-able promise.

Summary

Methods
Properties
Constants
__construct()
promise()
batch()
No public properties found
No constants found
No protected methods found
No protected properties found
N/A
cmpCallback()
$each
N/A

Properties

$each

$each : \GuzzleHttp\Promise\EachPromise

Type

EachPromise

Methods

__construct()

__construct(\GuzzleHttp\ClientInterface  $client, array|\Iterator  $requests, array  $config = []) : mixed

Parameters

\GuzzleHttp\ClientInterface $client

Client used to send the requests.

array|\Iterator $requests

Requests or functions that return requests to send concurrently.

array $config

Associative array of options

  • concurrency: (int) Maximum number of requests to send concurrently
  • options: Array of request options to apply to each request.
  • fulfilled: (callable) Function to invoke when a request completes.
  • rejected: (callable) Function to invoke when a request is rejected.

Returns

mixed —

promise()

promise() : \GuzzleHttp\Promise\PromiseInterface

Get promise

Returns

\GuzzleHttp\Promise\PromiseInterface —

batch()

batch(\GuzzleHttp\ClientInterface  $client, array|\Iterator  $requests, array  $options = []) : array

Sends multiple requests concurrently and returns an array of responses and exceptions that uses the same ordering as the provided requests.

IMPORTANT: This method keeps every request and response in memory, and as such, is NOT recommended when sending a large number or an indeterminate number of requests concurrently.

Parameters

\GuzzleHttp\ClientInterface $client

Client used to send the requests

array|\Iterator $requests

Requests to send concurrently.

array $options

Passes through the options available in {@see \GuzzleHttp\Pool::__construct}

Throws

\InvalidArgumentException

if the event format is incorrect.

Returns

array —

Returns an array containing the response or an exception in the same order that the requests were sent.

cmpCallback()

cmpCallback(array  $options, string  $name, array  $results) : void

Execute callback(s)

Parameters

array $options
string $name
array $results