Pool::collect

(PECL pthreads >= 2.0.0)

Pool::collectRecopila las referencias de las tareas completadas

Descripción

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

Permite al pool recopilar referencias determinadas para ser colectadas por el colector dado opcionalmente.

Parámetros

collector

Un colector que puede ser llamado y que devuelve un valor booleano para determinar si la tarea puede ser colectada o no. Solo en casos raros debe utilizarse un colector personalizado.

Valores devueltos

Número de tareas restantes en el pool para ser colectadas.

Historial de cambios

Versión Descripción
PECL pthreads 3.0.0 Ahora se devuelve un entero, y el argumento collector es ahora opcional.

Ejemplos

Ejemplo #1 Un ejemplo 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()); // bloquea hasta que todas las tareas hayan finalizado

$pool->shutdown();