php定时执行任务 回调,高阶篇六 定时执行队列类库以及使用方法

# 高阶篇六 定时执行队列类库以及使用方法

## 首先 参见启动 命令行异步多进程队列

高阶篇五 命令行异步多进程队列类的应用

https://www.kancloud.cn/mikkle/thinkphp5_study/557907

>[danger] 队列不启动 定时任务是无法执行的

>

>高阶篇五 命令行异步多进程队列类的应用

https://www.kancloud.cn/mikkle/thinkphp5_study/557907

### 第一步 创建定时执行类文件

>[danger] 创建类文件 继承 类库 TimingWorkerBase 既可

~~~

/**

* Created by PhpStorm.

* User: Mikkle

* QQ:776329498

* Date: 2017/8/2

* Time: 15:59

*/

namespace app\worker;

use app\base\service\center\RandNumCenter;

use mikkle\tp_worker\TimingWorkerBase;

use think\Log;

class Test extends TimingWorkerBase

{

protected function runHandle($data)

{

Log::notice( "测试".RandNumCenter::getTimeString() );

}

}

~~~

>[info] 回调方法runHandle的内容自己写

### 第二步 添加定时执行任务执行

在控制器 Hook 服务层 Model 中都可以添加以下方法 调用定时队列

~~~

//要执行定时任务的参数

$data = ["name"=>"mikkle",];

//多少秒后执行 或者 要执行的时间戳

$runTime = 30 ;

\app\worker\Test::add($data,$runTime);

//或者 要执行的时间戳

$runTime = time()+60 ;

\app\worker\Test::add($data,$runTime);

~~~

### 执行日志

~~~

[ notice ] 添加了 51 号定时任务

[ notice ] Timing Command service start work!!

[ notice ] 添加了 52 号定时任务

[ notice ] Timing Command service start work!!

~~~

![](https://box.kancloud.cn/0249941fb47ca87f96fcc4a0c24f1769_509x716.png)

感谢大家关注 交流请加QQ群 321449759

![](https://box.kancloud.cn/3499008a08e64306c68873288092a057_286x340.png)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值