我每30分钟就跑一次CronJob。 但它在开始时没有运行。 我怎样才能让它在开始时以及每30分钟运行一次?
var CronJob = require('cron').CronJob;
console.log('started ' + new Date());
var job = new CronJob('0 */30 * * * *', function() {
myJob()
}, function () {
},
true,
'Indian/Mauritius'
);
job.start();
function myJob()
{
console.log('in Job');
console.log(new Date());
}
输出
started Mon Sep 21 2015 18:44:29 GMT+0530 (IST)
答案 0 :(得分:2)
您可以运行myJob()
,然后启动您的cronjob。
或......
你可以改变你使用cron的方式,以便它在特定时间运行,比如现在和每半个小时这样:
var job = new CronJob('* 16,46 * * * *', // etc
假设时间现在是15:45,上述命令将在一分钟内运行(即每小时的第16和第46分钟)。使用更多的代码,您可以生成字符串“16,46”,从现在起一分钟,然后30分钟。