setInterval(1); } #[\Override] protected function run($argument) { // We don't use time() but "time() - 1" here, so we don't run into // runtime issues later and delete emails, which were created in the // same second, but were not collected for the emails. $sendTime = time() - 1; if ($this->isCLI) { do { // If we are in CLI mode, we keep sending emails // until we are done. $emails_sent = $this->queueHandler->sendEmails(MailQueueHandler::CLI_EMAIL_BATCH_SIZE, $sendTime); } while ($emails_sent === MailQueueHandler::CLI_EMAIL_BATCH_SIZE); } else { // Only send 25 Emails in one go for web cron $this->queueHandler->sendEmails(MailQueueHandler::WEB_EMAIL_BATCH_SIZE, $sendTime); } } }