下面由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都清掉就行了.
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END