阅读(4941)
赞(13)
Laravel 8 队列闭包
2021-07-06 09:25:05 更新
除了将作业类推送到队列之外,你还可以推送闭包到队列。这对于需要在当前请求周期之外执行简单快捷的任务时非常方便。在将闭包推送到队列时,闭包的代码内容是经过加密签名的,因为在传输过程中没有办法进行修改:
$podcast = AppPodcast::find(1);
dispatch(function () use ($podcast) {
$podcast->publish();
});
当队列的闭包方法失败重试次数达到上限后仍没有成功运行时,会执行 catch
方法中的闭包:
use Throwable;
dispatch(function () use ($podcast) {
$podcast->publish();
})->catch(function (Throwable $e) {
// 任务失败了
});