summaryrefslogtreecommitdiff
path: root/server/vendor/guzzlehttp/promises/src/TaskQueue.php
diff options
context:
space:
mode:
authorEoleDev <EoleDev@outlook.fr>2016-04-14 16:28:25 +0200
committerEoleDev <EoleDev@outlook.fr>2016-04-14 16:28:25 +0200
commit31d2d0c158ad4daa3dde7a905f3c2e312c194f2e (patch)
tree43d761d2aec8265a22c0fdedcc365bacc10dc814 /server/vendor/guzzlehttp/promises/src/TaskQueue.php
parent27730911d8c9253a4f5aa90450c57cdeca9d5d26 (diff)
parentb348dbc2266a3e8070a3951fb0bd8c19b852ec47 (diff)
Merge branch 'compute'
Conflicts: server/core/LibOverride/genTokenOptions.php
Diffstat (limited to 'server/vendor/guzzlehttp/promises/src/TaskQueue.php')
-rwxr-xr-xserver/vendor/guzzlehttp/promises/src/TaskQueue.php80
1 files changed, 0 insertions, 80 deletions
diff --git a/server/vendor/guzzlehttp/promises/src/TaskQueue.php b/server/vendor/guzzlehttp/promises/src/TaskQueue.php
deleted file mode 100755
index 39fe5bb..0000000
--- a/server/vendor/guzzlehttp/promises/src/TaskQueue.php
+++ /dev/null
@@ -1,80 +0,0 @@
-<?php
-namespace GuzzleHttp\Promise;
-
-/**
- * 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\queue()->run();
- */
-class TaskQueue
-{
- private $enableShutdown = true;
- private $queue = [];
-
- public function __construct($withShutdown = true)
- {
- if ($withShutdown) {
- register_shutdown_function(function () {
- if ($this->enableShutdown) {
- // Only run the tasks if an E_ERROR didn't occur.
- $err = error_get_last();
- if (!$err || ($err['type'] ^ E_ERROR)) {
- $this->run();
- }
- }
- });
- }
- }
-
- /**
- * Returns true if the queue is empty.
- *
- * @return bool
- */
- public function isEmpty()
- {
- return !$this->queue;
- }
-
- /**
- * Adds a task to the queue that will be executed the next time run is
- * called.
- *
- * @param callable $task
- */
- public function add(callable $task)
- {
- $this->queue[] = $task;
- }
-
- /**
- * Execute all of the pending task in the queue.
- */
- public function run()
- {
- /** @var callable $task */
- while ($task = array_shift($this->queue)) {
- $task();
- }
- }
-
- /**
- * 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.
- *
- * 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.
- */
- public function disableShutdown()
- {
- $this->enableShutdown = false;
- }
-}