(PECL pthreads >= 2.0.0)
Submits an object for execution
public integer Pool::submit ( Threaded $task )
Submit the task to the next Worker in the Pool
Parameters:
size
The task for execution
Returns:
the identifier of the Worker executing the object
Examples:
Submitting Tasks
<?php class MyWork extends Threaded { public function run() { /* ... */ } } class MyWorker extends Worker { public function __construct(Something $something) { $this->something = $something; } public function run() { /** ... **/ } } $pool = new Pool(8, \MyWorker::class, [new Something()]); $pool->submit(new MyWork()); var_dump($pool); ?>
The above example will output:
object(Pool)#1 (6) { ["size":protected]=> int(8) ["class":protected]=> string(8) "MyWorker" ["workers":protected]=> array(1) { [0]=> object(MyWorker)#4 (1) { ["something"]=> object(Something)#5 (0) { } } } ["work":protected]=> array(1) { [0]=> object(MyWork)#3 (1) { ["worker"]=> object(MyWorker)#5 (1) { ["something"]=> object(Something)#6 (0) { } } } } ["ctor":protected]=> array(1) { [0]=> object(Something)#2 (0) { } } ["last":protected]=> int(1) }
Please login to continue.