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

相关推荐
JienDa4 分钟前
JienDa聊PHP:PHP 8革命性特性深度实战报告:枚举、联合类型与Attributes的工程化实践
android·开发语言·php
大雾的小屋6 分钟前
【1-1】基于深度学习的滚动轴承故障诊断系统:从数据处理到交互式界面全流程解析
人工智能·pytorch·深度学习·系统架构·人机交互·pyqt·用户界面
JSON_L7 分钟前
PHP安装GMP扩展
开发语言·php
一路向北he8 分钟前
你的注意力所在之处,决定了你的世界
人工智能
Mintopia9 分钟前
🧠 AI驱动的B端服务架构猜想
人工智能·安全·架构
极客BIM工作室10 分钟前
AI导读AI论文: CAD-Assistant: Tool-Augmented VLLMs as Generic CAD Task Solvers
人工智能·机器学习
神奇的代码在哪里12 分钟前
C++的演进与我的编程学习之旅:从底层基础到AI应用
c++·人工智能·python·学习·程序人生·个人开发
海岸线科技14 分钟前
人、智能体和机器人:麦肯锡最新报告引发的思考
人工智能·机器人·制造·质量·qms
CQU_JIAKE15 分钟前
将WSL2从C盘转移到其它盘
人工智能