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

相关推荐
数琨创享TQMS质量数智化2 小时前
数琨创享AI质量专家团skchat × skwork × skclaw × skcode正式发布
人工智能·科技
北京君诺正信知识产权2 小时前
商标变更、转让、续展怎么办理?官方规则整理好了
大数据
ckjr0072 小时前
AI时代,知识付费行业如何实现增长?
人工智能
字节跳动数据平台2 小时前
水印字幕无痕擦除!电商、短剧素材处理告别“贴膏药”
大数据
清华kenny2 小时前
中医生活化智能终端对比:晓得养在合肥周边的服务优势
大数据·人工智能·安徽晓得养
ZKNOW甄知科技2 小时前
燕千云迭代版本发布:智能Agent深入业务现场
运维·人工智能·低代码·机器学习·自然语言处理·自动化·aigc
汉知宝科技2 小时前
商标管理软件选型指南:四类平台定位与功能覆盖横向对比
大数据
蒲公英内测分发2 小时前
智能手环出海测试,海外合作方分散在不同国家,Android 测试包怎么持续分发和更新?
android·前端·人工智能·测试工具·智能手表
危险、2 小时前
AI写的计划方案领导不满意?试下我这个反复打磨的计划方案提示词?
人工智能
镜象科技2 小时前
ACT自助干预适用人群:谁适合、谁不适合、边界在哪
人工智能