解决Laravel某些设置了withoutOverlapping()的任务没有得到执行的问题

下面由laravel教程栏目给大家介绍Laravel某些设置了withoutOverlapping()的任务没有得到执行的问题解决,希望对需要的朋友有所帮助!

rm -rf storage/framework/cache/*

本质是因为意外情况导致上一个正在执行中的任务没有正常结束,更它的mutex标记文件却还在,使得Laravel框架的PHP artisan schedule:run命令任务该任务还在执行中,所以为了withoutOverlapping,就跳过执行了,在这种情况下,手动将mutex标记删掉就能恢复正常。

mutex标记是受Laravel框架的vendor/laravel/framework/src/Illuminate/Console/Scheduling/CacheMutex.PHP文件控制的,用的是.env中指定的CACHE_DRIVER(对应到config/cache.PHP中指定的配置),一般认是file类型,对应到storage/framework/cache目录,所以把该目录的cache都清掉就行了.

相关文章

laravel的dd函数不生效怎么办
看不懂laravel文档咋办
安装laravel框架出现command怎么办
Laravel开发API怎么使用事务
laravel怎么构建复杂查询条件
laravel如何实现防止被下载