Tag: 内存限制

max_old_space_size设置为4GB,实际上限制为2GB

我在Gentoo Linux 64位下编写NodeJS 6.3.1应用程序。 在这台机器上,我通常有16GB的可用内存和49GB的交换空间,几乎没有使用。 我使用下面的代码来testing我的node.js应用程序的内存限制: var arr = []; var c=0; while(arr.push('foo')) {if (++c%100000 == 0) {console.info(process.memoryUsage());}} 运行这个脚本时没有额外的参数给节点,最后一个memoryUsage行是这样的: { rss: 1032232960, heapTotal: 1015185408, heapUsed: 1008680024 } 现在使用–max_old_space_size=4096运行node.js,最后一个memoryUsage行是这样的: { rss: 2202341376, heapTotal: 2189082624, heapUsed: 2177311480 } 现在有8000个限制: { rss: 1934946304, heapTotal: 1921712128, heapUsed: 1909919344 } 我错过了什么? 我怎样才能把堆增加到4或8GB?