【发布时间】:2018-03-29 13:36:14
【问题描述】:
我一直在尝试编写一个代码,我可以看到在设置超时和下次删除时不应增加 heapused。但不管 heapUsed 在不断增加。
var process = require('process');
var initial = process.memoryUsage();
console.log("initial",initial.heapUsed);
var x;
function Happen() {
var prop = process.memoryUsage();
console.log("process",prop.heapUsed);
if(x)
clearTimeout(x);
x = setTimeout(function() {
Happen();
}, 500);
}
Happen();
【问题讨论】:
-
如果你在
Happen(),超时已经被调用,不需要clearTimeout(x) -
清除超时是释放之前创建的setTimeout,因为setTimeout总是被认为是全局变量
标签: javascript node.js memory-leaks settimeout