Laravel 调度程序在不同时间触发 2 个命令

Laravel Scheduler fire 2 Commands at different times

我有 1 个自定义 Command 我创建了:

php artisan protal:process {name}

我需要为 2 个不同的 Portal(不同 name)触发此命令,所以如果我 运行 在我的控制台中执行此命令一切正常:

php artisan protal:process nameone
//wait for it to finish
php artisan protal:process nametwo

我需要在晚上用 cron 做同样的事情,所以这就是我想出的:

app/console/Kernel.php

protected function schedule(Schedule $schedule)
{
    $schedule->command('portal:process nameone')->daily()->withoutOverlapping();
    $schedule->command('portal:process nametwo')->dailyAt('00:10')->withoutOverlapping();
}

由于某些原因,只有第一个命令会触发,而第二个命令会被忽略。如果我 运行 第二个评论第一个它工作正常。

也许要在不同的时间触发 2 个命令,我是否必须采用上述方法以外的其他方法?

添加为参考答案,是评论:

我以前遇到过这个问题。问题是我从未正确关闭第一个命令(例如使用 return),这导致 Laravel 认为该命令从未结束并且因此从未启动下一个命令。 PHP 逐行执行,所以问题可能出在 withoutOverlapping.