var showMem = function() { var mem = process.memoryUsage(); var format = function(bytes) { return (bytes/1024/1024).toFixed(2)+'MB'; }; console.log('Process: heapTotal '+format(mem.heapTotal) + ' heapUsed ' + format(mem.heapUsed) + ' rss ' + format(mem.rss)); }; for(var i = 0 ; i < 1000000; i++){ process.nextTick(function () { }); } console.log("------------------------------------ ") setInterval(function(){ console.log("in interval ") showMem() }, 3000)
就这样一段代码。执行完之后,内存会暴涨,而且永远都无法降下来。 把这句话去掉,就正常的。 process.nextTick(function () { }); 为什么会有内存无法回收的问题呢?