TaskQueue
in package
implements
TaskQueueInterface
A task queue that executes tasks in a FIFO order.
This task queue class is used to settle promises asynchronously and
maintains a constant stack size. You can use the task queue asynchronously
by calling the run()
function of the global task queue in an event loop.
GuzzleHttp\Promise\Utils::queue()->run();
Tags
Table of Contents
Interfaces
Properties
- $enableShutdown : mixed
- $queue : mixed
Methods
- __construct() : mixed
- add() : void
- Adds a task to the queue that will be executed the next time run is called.
- disableShutdown() : void
- The task queue will be run and exhausted by default when the process exits IFF the exit is not the result of a PHP E_ERROR error.
- isEmpty() : bool
- Returns true if the queue is empty.
- run() : void
- Execute all of the pending task in the queue.
Properties
$enableShutdown
private
mixed
$enableShutdown
= true
$queue
private
mixed
$queue
= []
Methods
__construct()
public
__construct([bool $withShutdown = true ]) : mixed
Parameters
- $withShutdown : bool = true
add()
Adds a task to the queue that will be executed the next time run is called.
public
add(callable $task) : void
Parameters
- $task : callable
disableShutdown()
The task queue will be run and exhausted by default when the process exits IFF the exit is not the result of a PHP E_ERROR error.
public
disableShutdown() : void
You can disable running the automatic shutdown of the queue by calling this function. If you disable the task queue shutdown process, then you MUST either run the task queue (as a result of running your event loop or manually using the run() method) or wait on each outstanding promise.
Note: This shutdown will occur before any destructors are triggered.
isEmpty()
Returns true if the queue is empty.
public
isEmpty() : bool
Return values
boolrun()
Execute all of the pending task in the queue.
public
run() : void