1.调度任务命令如下:

$schedule->command('emails:send')->withoutOverlapping();

说明:withoutOverlapping 这个命令的作用就是当一个进程还没跑完,不会开启新的进程。其机制就是开启明亮的时候会在项目的storage/framework/cache目录中添加一个文件,如果进程卡住或者未进行完成的时候,这个文件就会陷入死循环,一直执行该进程,等到进程执行完毕之后,会删除相对应的缓存文件,开始下一个进程。

简单理解就是加上withoutOverlapping  会引起阻塞,只有完成的任务才会继续下面的进程

mark
24 声望4 粉丝