首頁 >後端開發 >php教程 >laravel 如何已經存在的刪除佇列任務

laravel 如何已經存在的刪除佇列任務

不言
不言原創
2018-05-15 11:28:495601瀏覽

加入了一個定時任務到隊列中.因為某些原因,不需要執行這個任務了.

那麼請問如何從隊列中刪除指定的任務?

回复內容:

加入了一個定時任務到隊列中.因為某些原因,不需要執行這個任務了.
那麼請問如何從隊列中刪除指定的任務?

完整流程比較複雜且冗長,我就直接就重點講了,基本上在加入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 的方法,單純的賦值

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn