如果从数据库中删除,Laravel 中的排队作业会停止吗?

Does a queued job in Laravel get stopped if deleted from database?

我正在尝试实现一项功能,当用户删除他们的帐户时,它会激活一个在一周内排队的工作,但如果用户决定保留他们的帐户,则允许他们取消此队列。但是,我注意到当我从数据库中删除作业时,作业没有激活。这是取消排队作业的正确方法吗?

我在 .env 文件中为 QUEUE_CONNECTION=database 使用数据库选项。我也有工作 table.

要从数据库中删除所有失败的作业,请使用:

php artisan queue:flush

要从数据库中删除失败的作业,请使用:

php artisan queue:forget your_failed_job_uid

要从数据库中删除所有作业,请使用:

php artisan queue:clear

注意事项: 您的系统将根据队列配置处理队列,例如延迟作业或重试失败的作业 3 次,每次重试后都有延迟。