在 Laravel 5.5 中,当我们将作业调度到作业队列后,如何获取作业 ID?

2023-12-29

直到 Laravel 5.4 为止,dispatch()方法返回队列作业 ID。

$job = (new JobClass())->onQueue('queuename');
$jobId = dispatch($job);

dd($jobId); // prints the job id

在 5.5 中,它返回一个PendingDispatch对象,它似乎没有检索作业 ID 的方法。

我已经尝试过dispatch_now(),但它立即同步执行作业,而我希望它在后台执行。


在 Laravel github 上提出问题后,解决方案是使用:

app(\Illuminate\Contracts\Bus\Dispatcher::class)->dispatch($job)

代替

dispatch($job)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Laravel 5.5 中,当我们将作业调度到作业队列后,如何获取作业 ID? 的相关文章

随机推荐