array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ja', ), 'this' => array ( 0 => 'pool.collect.php', 1 => 'Pool::collect', ), 'up' => array ( 0 => 'class.pool.php', 1 => 'Pool', ), 'prev' => array ( 0 => 'class.pool.php', 1 => 'Pool', ), 'next' => array ( 0 => 'pool.construct.php', 1 => 'Pool::__construct', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'en', 'path' => 'reference/pthreads/pool/collect.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PECL pthreads >= 2.0.0)
Pool::collect — Collect references to completed tasks
Allows the pool to collect references determined to be garbage by the optionally given collector.
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 to be used.
The number of remaining tasks in the pool to be collected.
バージョン | 説明 |
---|---|
v3 |
An integer is now returned, and the collector
parameter is now optional.
|
例1 A basic example of Pool::collect()
<?php
$pool = new Pool(4);
for ($i = 0; $i < 15; ++$i) {
$pool->submit(new class extends Threaded {});
}
while ($pool->collect()); // blocks until all tasks have finished executing
$pool->shutdown();