跳到主要内容
CNode

定时任务为什么会执行两次,很奇怪,有没有大神知道是什么原因???

问答
Qquanpf2481发布于 7 年前最后回复 7 年前
1471530

写了一个定时任务,如下: const schedule = require('node-schedule'); let rule2 = new schedule.RecurrenceRule(); rule2.hour = [1,2,3,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]; rule2.minute = [3,8,13,18,23,28,33,38,43,48,53,58]; rule2.second = 1; schedule.scheduleJob(rule2, function(){ // 每隔5分钟 lightLog.info('pid:', process.pid,"定时产生数据"); require('../cron/GenNum.js')(); });

每隔一段时间(时间随机)会,在执行定时任务的时候,会执行两次,请问是为什么???下面是打印的结果

image.png

查看回复

回复 (14)

J
joucksHua#147 年前

pm2 start -i 2 ?? 还是重复调用?? 仔细检查检查,我也在用,没啥问题

C
cnlile#137 年前

node-schedule 这个package 有bug的。。。这个我以前写过。。。

N
Niklaus954#127 年前

当前文件被引用了两次,在schedule.scheduleJob前log一下看看

Y
yuedun#117 年前

你部署两台服务器吗

I
iflet#107 年前
引用 quanpf2481@iflet 什么意思???

@quanpf2481 用laterjs取代node-schedule

Q
quanpf2481#97 年前
引用 ifletlater.js

@iflet 什么意思???

I
iflet#87 年前

later.js

Q
quanpf2481#77 年前
引用 GreyPrinceZote@quanpf2481 /cron/GenNum.js 这里面是啥东西啊

@GreyPrinceZote 跟这个里面的内容有关系嘛???就是一般的任务啊

G
GreyPrinceZote#67 年前

@quanpf2481 /cron/GenNum.js 这里面是啥东西啊

Q
quanpf2481#57 年前
引用 zhhb你用了cluster?

@zhhb 没有啊

Z
zhhb#47 年前

你用了cluster?

F
fyouf#37 年前

看需求吧,node-schedule我一直都在用,不过我都是直接用cron格式写

Q
quanpf2481#27 年前
引用 GreyPrinceZote建议大家不要使用node schedule这个模块了吧,被坑了一下

@GreyPrinceZote 那请问用什么模块来代替呢

参与回复

登录后即可参与回复。登录