Я пытался найти утечку памяти в своем коде. Я узнал, когда n is, 1 < n < 257 он показывает 0KB, но, как я положил 257, он потреблял память 304 КБ, а затем увеличивал пропорционально n.Почему память nodejs не потребляется для определенного количества циклов
function somefunction()
{
var n = 256;
var x ={};
for(var i=0; i<n; i++){
x['some'+i] = {"abc" : ("[email protected]"+i)};
}
}
// Memory Leak
var init = process.memoryUsage();
somefunction();
var end = process.memoryUsage();
console.log("memory consumed 2nd Call : "+((end.rss-init.rss)/1024)+" KB");
этом не имеет значения, какое значение п вы положили. Поскольку x является локальной переменной, память, занятая им, будет освобождена при следующем запуске gc. Момент gc цикл не был выполнен к тому моменту, когда вы записали memoryUsage в конечную переменную –