# A classe Pool

(PECL pthreads >= 2.0.0)

## Introdução

Um Pool é um contêiner e controlador de um número ajustável de Workers.

O pooling fornece uma abstração de nível mais alto da funcionalidade do Worker, incluindo o gerenciamento de referências da maneira exigida pelos pthreads.

## Resumo da classe

class Pool {
/* Propriedades */
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
}

## Propriedades

size
  número máximo de Workers que este pool pode usar
class
  a classe do Worker
workers
  referências a Workers
ctor
  os argumentos para o construtor de novos Workers
last
  deslocamento em workers do último Worker usado

## Índice

- Pool::collect — Coleta referências a tarefas concluídas
- Pool::__construct — Cria um novo pool de trabalhadores
- Pool::resize — Redimensiona o Pool
- Pool::shutdown — Desliga todos os trabalhadores
- Pool::submit — Envia um objeto para execução
- Pool::submitTo — Envia uma tarefa a um trabalhador específico para execução

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