laravel 如何已经存在的删除队列任务

不言
发布: 2023-03-01 06:24:01
原创
5557 人浏览过

加入了一个定时任务到队列中.因为某些原因,不需要执行这个任务了.

那么请问如何从队列中删除指定的任务?

回复内容:

加入了一个定时任务到队列中.因为某些原因,不需要执行这个任务了.
那么请问如何从队列中删除指定的任务?

完整流程比較複雜且冗長,我就直接就重點講了,基本上在加入 Queue 時會進行一系列處理,那其中就會執行到這段:

CallQueuedHandler

protected function setJobInstanceIfNecessary(Job $job, $instance)
{
    // class_uses_recursive 可以取得類所使用到的 trait
    if (in_array('Illuminate\Queue\InteractsWithQueue', class_uses_recursive(get_class($instance)))) {
        // 所以假如類有 use Illuminate\Queue\InteractsWithQueue
        // 就呼叫 setJob($job)
        $instance->setJob($job);
    }
    return $instance;
}
登录后复制

setJob 則是 InteractsWithQueue 的方法,單純的賦值

InteractsWithQueue

public function setJob(JobContract $job)
{
    $this->job = $job;
    return $this;
}
登录后复制
相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板