(PECL pthreads >= 3.0.0)
Worker::collect — Collecte les références des tâches terminées
Permet au worker de collecter les références déterminées comme étant des miettes par le collector éventuellement donné.
collectorLe nombre de tâches restantes sur la pile du worker à collecter.
Exemple #1 Un exemple basique de Worker::collect()
<?php
$worker = new Worker();
echo "Il y a actuellement {$worker->collect()} tâches sur la pile à collecter\n";
for ($i = 0; $i < 15; ++$i) {
$worker->stack(new class extends Threaded {});
}
echo "Il reste {$worker->collect()} tâches sur la pile à collecter\n";
$worker->start();
while ($worker->collect()); // bloque jusqu'à ce que toutes les tâches soient terminées
echo "Il y a maintenant {$worker->collect()} tâches sur la pile à collecter\n";
$worker->shutdown();L'exemple ci-dessus va afficher :
Il y a actuellement 0 tâches sur la pile à collecter Il reste 15 tâches sur la pile à collecter Il y a maintenant 0 tâches sur la pile à collecter