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

相关推荐
jsl_jsl_jsl15 小时前
《单机 Agent 应用的可观测性:刻意轻量的日志与调用链实现》
人工智能
G***技15 小时前
告别物联网碎片化:杰和LH707+LM2-100-V0联合方案给出标准答案
人工智能·嵌入式硬件
szxinmai主板定制专家15 小时前
【工控实战】RK3568/RK3588 8路隔离CAN/CANFD完整解决方案|多路总线并行通信、车载/工控量产落地
人工智能·fpga开发·zynq·mpsoc·半导体设备
刘马想放假15 小时前
RK3588 使用 rk-llama.cpp + RKNPU2 部署 Qwen3.5:从零开始的 NPU 本地大模型实战
人工智能·开源·llm
商业看点解说15 小时前
哪些 AI 创业公司和生成式 AI 产品适合使用 Amazon Bedrock?
人工智能
智驭未来掌门人15 小时前
大模型网关集成 MCP 与 CLI 的调用指南(自动分配密钥工具)
人工智能
snakeshe101015 小时前
AI 应用开发Day4(下):Embedding——从关键词匹配走向语义检索
人工智能
秦先生在广东15 小时前
Tencent BrowserSkill:让 AI Agent 无缝接入真实浏览器会话
人工智能
Allen正心正念202515 小时前
Agent框架—LangGraph智能体框架设计要点和踩坑预防指南
人工智能
高升说15 小时前
无人机机载视觉避障硬件链路拆解:从成像到制动的五层设计
人工智能