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

相关推荐
张拭心3 小时前
Cursor 又偷偷更新,这个功能太实用:Visual Editor for Cursor Browser
前端·人工智能
吴佳浩4 小时前
大模型 MoE,你明白了么?
人工智能·llm
Blossom.1185 小时前
基于Embedding+图神经网络的开源软件供应链漏洞检测:从SBOM到自动修复的完整实践
人工智能·分布式·深度学习·神经网络·copilot·开源软件·embedding
t198751285 小时前
电力系统经典节点系统潮流计算MATLAB实现
人工智能·算法·matlab
万悉科技6 小时前
比 Profound 更适合中国企业的GEO产品
大数据·人工智能
mqiqe6 小时前
vLLM(vLLM.ai)生产环境部署大模型
人工智能·vllm
V1ncent Chen6 小时前
机器是如何“洞察“世界的?:深度学习
人工智能·深度学习
AI营销前沿6 小时前
中国AI营销专家深度解析:谁在定义AI营销的未来?
人工智能
前端大卫6 小时前
【重磅福利】学生认证可免费领取 Gemini 3 Pro 一年
前端·人工智能
汽车仪器仪表相关领域7 小时前
LambdaCAN:重构专业空燃比测量的数字化范式
大数据·人工智能·功能测试·安全·重构·汽车·压力测试