The Pool class

Introduction

A Pool is a container for, and controller of, an adjustable number of Workers.

Pooling provides a higher level abstraction of the Worker functionality, including the management of references in the way required by pthreads.

Class synopsis

Pool
class Pool {
/* Properties */
protected $size;
protected $class;
protected $workers;
protected $ctor;
protected $last;
/* Methods */
public __construct(int $size, string $class = ?, array $ctor = ?)
public int collect(Callable $collector = ?)
public void resize(int $size)
public void shutdown()
public int submit(Threaded $task)
public int submitTo(int $worker, Threaded $task)
}

Properties

size
maximum number of Workers this Pool can use
class
the class of the Worker
workers
references to Workers
ctor
the arguments for constructor of new Workers
last
offset in workers of the last Worker used
Table of Contents