Thinkphp6实现定时任务功能

本文主要介绍命令启动定时任务的功能,按照CRMEB标准版的程序为大家详细的进行实现过程的介绍

  1. 首先创建安装Worker,执行composer require topthink/think-worker 安装
  2. 在config/console.php中定义指令 'timer' => \crmeb\command\Timer::class
  1. 对应图1中的路径创建自定义指令crmeb\command\Timer.php
  1. configure方法只要配置指令的内容,文件定义了一个timer的命令,设置了一个status的参数以及两个(d:是否DAEMON方式启动,以及i:执行间隔)的选项。

  2. init方法在执行命令的时候对参数进行初始化并组合数据,判断命令是启动还是停止,是否修改执行间隔,是否以守护进程方式启动

  1. execute开始执行命令调用下方start方法

  2. start方法开始执行定时执行的逻辑按照设置的间隔时间($this->interval)进行执行,默认2秒运行一次,调用系统中app\event.php文件下定时任务事件订阅类

  1. 在定时任务事件订阅类中完成对应系统方法的调用,即可实现定时任务功能

  2. 命令行执行命令 php think timer start --d

相关推荐
无忧智库15 分钟前
基于5G-A(通感一体)技术的城市低空飞行器实时航线监控底座建设方案(WORD)
大数据·人工智能·5g
IT_陈寒32 分钟前
为什么 Java 的 Optional 让我调试到深夜?
前端·人工智能·后端
有为少年33 分钟前
深度隐式层 | 隐式函数与自动微分
人工智能·神经网络·线性代数·机器学习·矩阵
大模型真好玩40 分钟前
大模型训练全流程实战指南工具篇(十三)—— 大模型评测实战(数据集评测+自动化评测)
人工智能·agent·deepseek
ShGamu41 分钟前
2026上半年链条输送机厂家全流程服务与选型参考
大数据·人工智能·链条输送机
charley.layabox42 分钟前
大连理工,将 LayaAir AI 游戏设计带进校园
人工智能·游戏
Raink老师1 小时前
【AI面试临阵磨枪-76】社交 AI:内容生成、审核、智能回复、多模态理解、安全治理
人工智能·安全·面试
装不满的克莱因瓶1 小时前
SpringAI Alibaba Tool工具调用机制实战-注解注册与函数调用全流程
人工智能·ai·tools·智能体·springai·tool
ZhengEnCi1 小时前
09ab-无偏置线性层是什么?
人工智能
Lkstar1 小时前
Transformer 核心机制拆解:自注意力、多头注意力、位置编码,一篇讲透
人工智能