Pool::submitTo

(PECL pthreads >= 2.0.0)

Pool::submitToSubmits an object for execution

설명

public integer Pool::submitTo ( integer $worker , Threaded $task )

Submit the object to the specified Worker in the Pool

인수

worker

The worker for execution

task

The task for execution

반환값

the identifier of the Worker that accepted the object

예제

Example #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)
}

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top