Pool::collect

(PECL pthreads >= 2.0.0)

Pool::collectСобирает ссылки на выполненные задания

Описание

public Pool::collect(Callable $collector = ?): int

Позволяет пулу собирать ссылки, определённые как мусор дополнительным сборщиком.

Список параметров

collector

Callback-функция сборщика, которая возвращает логическое значение, указывающее, может ли задача быть собрана или нет. Только в редких случаях может потребоваться специальный сборщик.

Возвращаемые значения

Количество оставшихся задач в пуле, которые нужно собрать.

Список изменений

Версия Описание
v3 Теперь возвращается целое число, а параметр collector теперь необязателен.

Примеры

Пример #1 Простой пример использования Pool::collect()

<?php
$pool
= new Pool(4);

for (
$i = 0; $i < 15; ++$i) {
$pool->submit(new class extends Threaded {});
}

while (
$pool->collect()); // до тех пор, пока все задачи не закончат выполнение

$pool->shutdown();