Laravel5.5 里怎么删除延迟的任务?????

任务队列用的redis,一直没有找到怎么可以删除延迟任务的方法
之前用的lumen5.5的做法,
用dispatch()可以发布任务,返回值就是任务id,再在redis里面把这条任务匹配出来,然后从redis中删除,

最近框架升级成laravel,发现dispatch()的返回值是一个job的结构体了,里面已经不包含job的id了,也没找到删除延迟任务的方法,不知道怎么处理了,
求大神指点下

《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

任务加入业务 id ,当不需要再处理这个队列的时候,将其中的一个字段标记为是否处理
队列 handle 的时候 判断下这个字段就可以

5年前 评论
讨论数量: 7

@miss201 是项目的需要,某些操作需要删除之前可能产生的未执行的延迟任务

5年前 评论

@Summer 大大看到的话,求指导,顶顶,求支持

5年前 评论

中间多一层判断,然后再执行队列

5年前 评论

任务加入业务 id ,当不需要再处理这个队列的时候,将其中的一个字段标记为是否处理
队列 handle 的时候 判断下这个字段就可以

5年前 评论

删除延迟任务找到解决方案没?

5年前 评论

@KangST 参考我勾选的答案,只能这样了

5年前 评论

@RICwang 在队列内有 delete 函数可以调用,判断这条数据是不是处理过了,处理过了就删除,下面的代码就不用执行了。看了遍文档找到的解决方案,貌似和上面说的一样。谢。

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!