NodeJS:调用global.gc()不会将内存减少到最小?

Sai*_*ama 6 javascript garbage-collection memory-leaks v8 node.js

调查内存泄漏,我设置了触发路线global.gc()在每POST /gc

app.post('/gc', function(req, res){
     global.gc();
});
Run Code Online (Sandbox Code Playgroud)

但是,我注意到如果我发送此请求,它每次都会越来越多地减少内存使用量.不应该调用global.gc() 一次就足以将内存减少到最小

如果是这样,为什么在每次通话时连续多次呼叫会减少内存

(我正在使用Node.js v0.12)

sne*_*nek 3

在非常高的层面上,V8 将 GC 分为两部分。寻找要收集的垃圾,并实际收集垃圾。调用gc()只执行第二部分,收集已经找到的垃圾。