在 Laravel Queue 的文件中,要 dispatch job 到 queue 中,語法如下:
MyJob::dispatch($data);
如果有注意的話,這段執行以後,job 並不會馬上進 queue,而是會先得到一個 PendingDispatch
物件。
由網路上的說明 PendingDispatch
物件,會在 response 完成、程式正常結束時,才會觸發並將 job 放進 queue。
若要在 Laravel Tinker 或是 console 中,不等待、直接將 job 放進 queue,則語法須改為下方所示:
$job = new MyJob($data); app(\Illuminate\Contracts\Bus\Dispatcher::class) ->dispatch($job);