>  기사  >  백엔드 개발  >  Laravel에서 기존 대기열 작업을 삭제하는 방법

Laravel에서 기존 대기열 작업을 삭제하는 방법

不言
不言원래의
2018-05-15 11:28:495567검색

예약된 작업이 대기열에 추가되었습니다. 어떤 이유로 이 작업을 실행할 필요가 없습니다.

그럼 대기열에서 지정된 작업을 어떻게 삭제하나요?

답변 내용:

예약된 작업을 대기열에 추가했습니다. 어떤 이유로 이 작업을 실행할 필요가 없습니다.
그럼 대기열에서 지정된 작업을 어떻게 삭제합니까?

전체 과정이 복잡하고 길기 때문에 그냥 집중적으로 설명하겠습니다. 기본적으로 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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.