# La clase Pool

(PECL pthreads >= 2.0.0)

## Introducción

Un Pool es un contenedor para, y controlado por, un número ajustable de Workers.

El pooling proporciona un nivel alto de abstracción sobre la funcionalidad Worker, incluyendo la gestión de referencias en el sentido requerido por pthreads.

## Sinopsis de la Clase

class Pool {
/* Propiedades */
protected $size;
protected $class;
protected $workers;
protected $ctor;
protected $last;
/* Métodos */
public function __construct(int `$size`, string `$class` = ?, array `$ctor` = ?)
public function collect(Callable `$collector` = ?): int
public function resize(int `$size`): void
public function shutdown(): void
public function submit(Threaded `$task`): int
public function submitTo(int `$worker`, Threaded `$task`): int
}

## Propiedades

size
  Número máximo de Workers que este pool puede utilizar
class
  La clase del Worker
workers
  referencias a los Workers
ctor
  Los argumentos para el constructor de los nuevos Workers
last
  desplazamiento en los workers del último Worker utilizado

## Tabla de contenidos

- Pool::collect — Recopila las referencias de las tareas completadas
- Pool::__construct — Crea un nuevo Pool de Workers
- Pool::resize — Redimensiona el Pool
- Pool::shutdown — Detiene todos los workers
- Pool::submit — Envía un objeto para su ejecución
- Pool::submitTo — Envía una tarea a un worker específico para su ejecución

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open