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

相关推荐
安全渗透Hacker几秒前
Inspectio工具NLP敏感实体检测模块:原理、实践与误报处理全解析
人工智能·安全·安全性测试
Cxiaomu4 分钟前
像ChatGPT一样逐字输出:React + TypeScript 流式接收与“打字机”效果实现方案
人工智能·react.js·chatgpt·typescript
AI视觉网奇5 分钟前
LtxVAE 学习笔记
人工智能·pytorch·深度学习
juyou51188 分钟前
清明踏青亲子研学升温,AI+数字乡村技术破解体验与安全管控痛点
大数据·人工智能·科技·ar·语音识别
Juicedata8 分钟前
一文解锁 JuiceFS 在 AI 场景中的性能优化
人工智能·性能优化
木头程序员8 分钟前
关于load_data_fashion_mnist函数运行原理以及运行速度慢解决方案
人工智能·python·深度学习·d2l
东离与糖宝18 分钟前
2026 Java AI框架选型:Spring AI/LangChain4j企业级对比
java·人工智能
yunpeng.zhou20 分钟前
深度理解agent与llm之间的关系、及mcp与skill的区别
人工智能·python·ai
CoderJia程序员甲21 分钟前
GitHub 热榜项目 - 日榜(2026-04-03)
人工智能·ai·大模型·github·ai教程
TDengine (老段)22 分钟前
TDengine IDMP 可视化 —— 趋势图
大数据·数据库·人工智能·物联网·时序数据库·tdengine·涛思数据