Heim >Backend-Entwicklung >PHP-Tutorial >So löschen Sie eine vorhandene Warteschlangenaufgabe in Laravel

So löschen Sie eine vorhandene Warteschlangenaufgabe in Laravel

不言
不言Original
2018-05-15 11:28:495601Durchsuche

Eine geplante Aufgabe wurde zur Warteschlange hinzugefügt. Aus bestimmten Gründen besteht keine Notwendigkeit, diese Aufgabe auszuführen.

Wie lösche ich also die angegebene Aufgabe aus der Warteschlange?

Antwortinhalt:

Eine geplante Aufgabe zur Warteschlange hinzugefügt. Aus bestimmten Gründen besteht keine Notwendigkeit, diese Aufgabe auszuführen.
Wie lösche ich dann die angegebene Aufgabe aus der Warteschlange?

Der gesamte Prozess ist kompliziert und langwierig, daher werde ich mich nur darauf konzentrieren. Beim Hinzufügen von Queue wird grundsätzlich eine Reihe von Prozessen ausgeführt, und dann wird dieser Abschnitt ausgeführt:

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;
}

und setJob ist die Methode von InteractsWithQueue, einfach Wert zuweisen

InteractsWithQueue

public function setJob(JobContract $job)
{
    $this->job = $job;
    return $this;
}
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn