登录
注册
node.js 学习社区
node.js中使用node-schedule实现定时任务实例

李梁

2014-12-17 10:46

有的时候需要根据业务需要,晚上凌晨以后执行某些操作的时候,这个可能会有所帮助,我最近正在研究这个,欢迎共同探讨。

github地址:https://github.com/mattpat/node-schedule

一、安装

复制代码 代码如下:

npm install node-schedule

二、确定时间,例如:2012年11月21日,5:30

复制代码 代码如下:

var schedule = require('node-schedule');
var date = new Date(2012, 11, 21, 5, 30, 0);

var j = schedule.scheduleJob(date, function(){
    console.log('The world is going to end today.');
});

//取消预设计划

j.cancel();

三、每小时的固定分钟,例如:每个小时的42分钟

复制代码 代码如下:

var schedule = require('node-schedule');

var rule = new schedule.RecurrenceRule();
rule.minute = 42;

var j = schedule.scheduleJob(rule, function(){
    console.log('The answer to life, the universe, and everything!');
});

四、.一个星期中的某些天的某个时刻,例如:每周四,周五,周六,周天的17点

复制代码 代码如下:

var rule = new schedule.RecurrenceRule();
rule.dayOfWeek = [0, new schedule.Range(4, 6)];
rule.hour = 17;
rule.minute = 0;

var j = schedule.scheduleJob(rule, function(){
    console.log('Today is recognized by Rebecca Black!');
});

五、每秒执行

复制代码 代码如下:

  var rule = new schedule.RecurrenceRule();
  var times = [];
  for(var i=1; i<60; i++){
    times.push(i);
  }
  rule.second = times;
  var c=0;
  var j = schedule.scheduleJob(rule, function(){
        c++;
        console.log(c);
  });

原文引自:http://www.jb51.net/article/50597.htm

回复 · 0

发表回复

你可以在回复中 @ 其他人