Pool::collect

(PECL pthreads >= 2.0.0)

Pool::collectColeta referências a tarefas concluídas

Descrição

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

Permite que o pool colete referências determinadas como lixo pelo coletor fornecido opcionalmente.

Parâmetros

collector

Um coletor chamável que retorna um booleano informando se a tarefa pode ser coletada ou não. Somente em casos raros, um coletor personalizado precisa ser usado.

Valor Retornado

O número de tarefas restantes no pool a serem coletadas.

Registro de Alterações

Versão Descrição
PECL pthreads 3.0.0 Um inteiro agora é retornado, e o parâmetro collector agora é opcional.

Exemplos

Exemplo #1 Um exemplo básico de Pool::collect()

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

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

while (
$pool->collect()); // bloqueia até que todas as tarefas tenham terminado de ser executadas

$pool->shutdown();