/** * {@inheritdoc} */ protected function execute(InputInterface $input, OutputInterface $output) { $cron = new Cron(); $cron->setExecutor($this->getContainer()->get('cron.executor')); if ($input->getArgument('job')) { $resolver = $this->getJobResolver($input->getArgument('job'), $input->hasOption('force')); } else { $resolver = $this->getContainer()->get('cron.resolver'); } $cron->setResolver($resolver); $time = microtime(true); $dbReport = $cron->run(); while ($cron->isRunning()) { } $output->writeln('time: ' . (microtime(true) - $time)); $manager = $this->getContainer()->get('cron.manager'); $manager->saveReports($dbReport->getReports()); }
protected function wait() { do { sleep(1); } while ($this->cron->isRunning() && !$this->checkTimeout()); }