/** * {@inheritdoc} * * @param string $command * @return void */ public function start($command) { $this->startWorkers($command); while ($this->isWorking()) { $worker = $this->getAvailableWorker(); if ($worker && !empty($this->pending)) { $worker->run(array_shift($this->pending)); } $this->broker->read(); } }