日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

thinkjs-定时任务

發布時間:2025/4/16 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 thinkjs-定时任务 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

thinkjs-定時任務

配置

原文文檔

定時任務的配置文件為 src/config/crontab.js(多模塊項目下配置文件為 src/common/config/crontab.js,也支持在每個模塊下配置定時任務文件 src/[module]/config/crontab.js),配置項為一個數組

//例子 module.exports = [{interval: '10s',immediate: true,handle: () => {console.log("測試定時器")} }, {//每周一1:30執行 教練設置默認時間的排班表cron:"30 1 * * 1 *",immediate: false,enable: true,handle: "coach/course/timingSetWork"type: 'all' }]

參數詳情

  • interval {String | Number} 執行的時間間隔 單位:毫秒

    interval:1000 表示1s中執行一次 等同于 interval:'1s';
    String配置文檔:1d(1天),10h(10小時),1y(一年)
  • cron {String} crontab 的格式,如 0 /1 * *

    如果配置了interval, 那么會忽略該屬性crontab 的格式文檔

  • type {String} 任務執行方式, one 或者 all, 默認是 one

    任務會在哪些子進程中執行,默認只在一個子進程中執行,all
    為在所有子進程中執行。即使配置了一個子進程中執行,也只能保證一個機器下在一個子進程中執行,多臺機器下還是會執行多次。如果跨機房、跨機器只希望執行一次,那么可以通過 enable 參數控制或者命令行執行來完成。

  • handle {Function | String} 執行任務,執行相應函數或者是路由地址,如:coach/course/timingSetWork

    定時任務的執行方法,可以是一個具體的執行函數,也可以是一個路由地址(會根據路由解析,然后執行對應的 Action)。

  • immediate {Boolean} 是否立即執行,默認是 false

    定時任務是否立即執行一次。

  • enable {Boolean} 是否開啟,默認是 true

    定時任務是否開啟,設置為 false 則關閉該條定時任務規則。比如:多機器下只希望在一臺機器下執行,那么可以通過機器名來判斷:

const hostname = require('os').hostname(); module.exports = [{interval: '10s',enable: hostname === 'host name',handle: () => {//do something} }]

轉載于:https://www.cnblogs.com/wentutu/p/11212426.html

總結

以上是生活随笔為你收集整理的thinkjs-定时任务的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。