【问题标题】:execute a cron job inside another cron job in node js在节点 js 的另一个 cron 作业中执行一个 cron 作业
【发布时间】:2018-11-23 10:25:15
【问题描述】:

我正在尝试在节点 js 中的另一个 cron 作业中运行一个 cron 作业。外部 cron 作业只执行一次 第 1 天:内部 cron 作业执行 1 次 第 2 天:内部 cron 作业执行 2 次 第 3 天:内部 cron 作业执行 3 次

cron.schedule("0 30 16 * * Monday,Tuesday,Wednesday,Thursday,Friday,Saturday", function () {
    console.log("inside outside cron job ")
    cron.schedule("10 30 16 * * Monday,Tuesday,Wednesday,Thursday,Friday,Saturday", function () {
    console.log("inside  cron job 1")
    })
})

为什么它执行多次,尽管我在一个 cron 作业中调用它一次

【问题讨论】:

  • 为什么要嵌套?
  • 内部 cron 作业应根据外部 cron 作业的输出执行。内部 cron 作业的时间由外部提供
  • @Abhishek Mani 内部 cron 作业的计时由外部 cronjob 提供
  • 必须每天调用外部 cron 作业以更改时间
  • 你能澄清一下模式,你想如何运行 cron 吗?

标签: node.js cron


【解决方案1】:
const cron = require("node-cron");
var a;
var b;
var hr;
var min;
var sec;
cron.schedule("0 0 1 * * Monday,Tuesday,Wednesday,Thursday,Friday,Saturday", function () {
    min = 30;
    hr = 8;
    sec = "0" + ' ' + min + ' ' + hr + ' ' + "* * Monday,Tuesday,Wednesday,Thursday,Friday,Sunday";
    if (a) {
        a.stop()
    }
    a = cron.schedule(sec, function () {});
    min = 30;
    hr = 16;
    sec = "0" + ' ' + min + ' ' + hr + ' ' + "* * Monday,Tuesday,Wednesday,Thursday,Friday,Sunday";
    if (b) {
        b.stop();
    }
    b = cron.schedule(sec, function () {});
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-27
    • 2019-08-25
    • 2020-04-24
    • 1970-01-01
    • 2011-11-07
    • 2010-10-25
    • 1970-01-01
    相关资源
    最近更新 更多