所以我想创建一个程序,每15分钟从web api获取数据并处理它。这个过程将是无止境的(直到程序关闭)。我已经尝试了超时但我的电脑内存很快耗尽了内存(24GB内存),所以我的代码显然是一个非常糟糕的方法。处理和收集数据部分代码已经完成并且工作正常,什么不是'工作是无限循环的一部分。我对这个问题的看法基本上是这样的:
for (i = 0;; ++i) {
setDelay(i);
}
function setDelay(i) {
setTimeout(function(){
//More code goes in here.
console.log(i);
}, 1000);
}
当然,必须有一种更好的方法,每隔X分钟无休止地执行一大块代码,而不会充斥你的PC RAM。有任何想法吗?
你可能想要使用setInterval
,它完全符合你的需要。片段
setInterval(function () {
console.log('Some message...');
}, 100);
将每100毫秒运行一次console.log
语句,而不会弄乱堆栈或浪费系统资源。