protected function doStart(Console $console) : \Generator
{
if (yield from $this->checkCommands($console)) {
return;
}
$this->recommendAssertionSetting();
$this->recommendLogLevel($console);
$this->stopPromisor = null;
$this->console = $console;
$this->workerCount = $this->determineWorkerCount($console);
$this->ipcServerUri = $this->bindIpcServer();
$this->workerCommand = $this->generateWorkerCommand($console);
yield from $this->bindCommandServer((string) $console->getArg("config"));
$promises = [];
for ($i = 0; $i < $this->workerCount; $i++) {
$promises[] = $this->spawn();
}
(yield \Amp\any($promises));
}