From 95c840f5a84609dcf87b8abc2a9691ead92a7b67 Mon Sep 17 00:00:00 2001 From: Thomas Punt Date: Thu, 12 Jan 2017 17:50:11 +0000 Subject: [PATCH] Document the new Worker::collect method git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@341649 c90b9560-bf6c-de11-be94-00142212c4b1 --- reference/pthreads/worker/collect.xml | 104 ++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 reference/pthreads/worker/collect.xml diff --git a/reference/pthreads/worker/collect.xml b/reference/pthreads/worker/collect.xml new file mode 100644 index 0000000000..abc6c6c774 --- /dev/null +++ b/reference/pthreads/worker/collect.xml @@ -0,0 +1,104 @@ + + + + + + Worker::collect + Collect references to completed tasks + + + + &reftitle.description; + + public integerWorker::collect + Callablecollector + + + Allows the worker to collect references determined to be garbage by the + optionally given collector. + + + + + &reftitle.parameters; + + + collector + + + A Callable collector that returns a boolean on whether the task can be + collected or not. Only in rare cases should a custom collector need be + used. + + + + + + + + &reftitle.returnvalues; + + The number of remaining tasks on the worker's stack to be collected. + + + + + &reftitle.examples; + + + A basic example + +collect()} tasks on the stack to be collected\n"; + +for ($i = 0; $i < 15; ++$i) { + $worker->stack(new class extends Threaded {}); +} + +echo "There are {$worker->collect()} tasks remaining on the stack to be collected\n"; + +$worker->start(); + +while ($worker->collect()); // blocks until all tasks have finished executing + +echo "There are now {$worker->collect()} tasks on the stack to be collected\n"; + +$worker->shutdown(); +]]> + + &example.outputs; + + + + + + + + +