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

相关推荐
醒醒该学习了!几秒前
人工智能伦理与职业操守(理论篇)
人工智能
五号厂房几秒前
🔥 Claude Code 源码解析(三):揭秘工具系统的精妙设计
人工智能
程序员佳佳1 分钟前
我在 Windows 和低配 Linux 上做 RAG:Milvus、FAISS、向量 API 中转的中立实测
linux·人工智能·windows·gpt·aigc·milvus·faiss
AI原来如此4 分钟前
Claude与ChatGPT激战正酣,国内AI中转站却突破2000家
人工智能·ai·chatgpt·大模型·编程
天丁o4 分钟前
企业 AI Agent 工程化落地:从需求边界到系统集成的 6 个环节
数据库·人工智能
189228048614 分钟前
NV088固态MT29F16T08EWLCHD8-RES:C
人工智能
每日综合4 分钟前
什么是模型服务平台MoMA?移动云一站式AI模型管理与应用中枢
人工智能
宁小法6 分钟前
Redis evalsha 可能返回的错误类型
redis·php·lua报错
涛思数据(TDengine)7 分钟前
从时序数据库到工业AI:涛思数据参编“人工智能+工业软件”评价规范,推动工业数据标准
大数据·数据库·人工智能·时序数据库·tdengine·涛思数据·工业数据库
澹锦汐7 分钟前
React 全栈开发:Server Components 与流式渲染的工程实践
人工智能