# 高阶篇六 定时执行队列类库以及使用方法 ## 首先 参见启动 命令行异步多进程队列 高阶篇五 命令行异步多进程队列类的应用 https://www.kancloud.cn/mikkle/thinkphp5_study/557907 >[danger] 队列不启动 定时任务是无法执行的 > >高阶篇五 命令行异步多进程队列类的应用 https://www.kancloud.cn/mikkle/thinkphp5_study/557907 ### 第一步 创建定时执行类文件 >[danger] 创建类文件 继承 类库 TimingWorkerBase 既可 ~~~ <?php /** * 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)