我有一个 node.js 脚本,它将流写入这样的数组:
var tempCrossSection = [];
stream.on('data', function(data) {
tempCrossSection.push(data);
});
以及另一个清空数组并对数据进行一些处理的回调,如下所示:
var crossSection = [];
setInterval(function() {
crossSection = tempCrossSection;
tempCrossSection = [];
someOtherFunction(crossSection, function(data) {
console.log(data);
}
}, 30000);
在大多数情况下这是可行的,但有时 setInterval 回调将在 30000 毫秒的间隔内执行多次(并且它不是坐在事件循环上的排队调用)。我也将其作为具有相同结果的 cronJob 完成。我想知道是否有办法确保 setInterval 每 30000 毫秒只执行一次。也许有一个更好的解决方案。谢谢。