pthreads Pool::submit
(PECL pthreads >= 2.0.0)
Pool::submit — Submits an object for execution
설명
public Pool::submit(Threaded $task
): int
풀의 다음 작업자에게 작업 제출
매개변수
task
- The task for execution
반환 값
객체를 실행하는 Worker의 식별자
Examples
예제 #1 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);
?>
위의 예는 다음을 출력합니다.
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) }