有人能解释一下为什么我的Node.js进程占用的内存超过了分配的内存吗? 我给Nodejs进程分配了4G的内存(根据Nodejs文档,在64位机器上支持的最大内存),但我发现进程触及了5.6G的RSS内存(比我分配的4G高得多) 这是我运行该进程的方式: node -max-old-space-size=4096 processName.js 这是我的TOP命令显示的内容(RSS @ 4.6g)
max-old-space-size 控制着 node.js 解释器中用于存储 JavaScript 对象(有时称为 V8 堆)的一部分内存使用,而不是整个进程的全部内存使用。例如,max-old-space-size 完全与 node.js 的本地代码部分使用多少内存无关。 因此,总内存使用量可能始终大于 max-old-space-size。