27 lines
723 B
PHP
27 lines
723 B
PHP
|
<?php
|
|||
|
namespace app\common\job\test;
|
|||
|
use think\queue\Job;
|
|||
|
class DemoJob
|
|||
|
{
|
|||
|
public function fire(Job $job, $data){
|
|||
|
|
|||
|
//....这里执行具体的任务
|
|||
|
|
|||
|
if ($job->attempts() > 3) {
|
|||
|
//通过这个方法可以检查这个任务已经重试了几次了
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
//如果任务执行成功后 记得删除任务,不然这个任务会重复执行,直到达到最大重试次数后失败后,执行failed方法
|
|||
|
$job->delete();
|
|||
|
|
|||
|
// 也可以重新发布这个任务
|
|||
|
// $job->release($delay); //$delay为延迟时间
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
public function failed($data){
|
|||
|
|
|||
|
// ...任务达到最大重试次数后,失败了
|
|||
|
}
|
|||
|
}
|