コード例 #1
0
 public function run()
 {
     $queue = new \Jenner\SimpleFork\Queue\SystemVMessageQueue(1, "/tmp/simple-fork-test.ipc");
     for ($i = 0; $i < 100; $i++) {
         $queue->put($i);
         //usleep(50000);
     }
 }
コード例 #2
0
 public function run()
 {
     sleep(5);
     $queue = new \Jenner\SimpleFork\Queue\SystemVMessageQueue();
     for ($i = 0; $i < 10; $i++) {
         $res = $queue->get();
         echo getmypid() . ' = ' . $i . PHP_EOL;
         var_dump($res);
     }
 }
コード例 #3
0
ファイル: Worker.php プロジェクト: asuper114/simple-fork-php
 public function run()
 {
     $queue = new \Jenner\SimpleFork\Queue\SystemVMessageQueue(1, "/tmp/simple-fork-test.ipc");
     while (true) {
         $res = $queue->get();
         if ($res !== false) {
             echo $this->getPid() . ":" . $res . PHP_EOL;
         }
         //usleep(100000);
     }
 }
コード例 #4
0
 public function testCommunication()
 {
     $process = new \Jenner\SimpleFork\Process(function () {
         $queue = new \Jenner\SimpleFork\Queue\SystemVMessageQueue();
         $queue->put('test');
     });
     $process->start();
     $process->wait();
     $queue = new \Jenner\SimpleFork\Queue\SystemVMessageQueue();
     $this->assertEquals($queue->size(), 1);
     $this->assertEquals($queue->get(), 'test');
 }