我需要在node.js中正确定时重复事件。为了获得比通常的setInterval方法更高的分辨率,我使用process.hrtime()
。 npm模块“nanotimer”(NPM - nanotimer,Github - nanotimer)使用setInterval()
和setTimeOut()
等常用方法提供此功能。
两个计时器应该同时停止。
代码如下:
var NanoTimer = require('nanotimer');
var timerA = new NanoTimer();
var timerB = new NanoTimer();
var index = 0;
timerA.setInterval(function(){
console.log("A");
timerB.setInterval(function(){
console.log("B");
}, '3s');
if(index > 10){
console.log("Stop Timer A");
timerA.clearInterval();
console.log("Stop Timer B");
timerB.clearInterval();
}
index++;
}, '1s');
输出:
A
A
A
A
B
A
A
A
B
A
A
A
B
A
A
Stop Timer A
Stop Timer B //correct up to here
B //timerB continues forever, every 3 seconds
B
B
...
我找不到停止内部计时器的方法。你有什么建议吗?