node.js - 为什么process.memoryUsage()不输出 Node 进程消耗的内存

在 node.js 应用程序中,我使用代码“console.log(process.memoryUsage());”记录内存使用情况。输出如下。

{ rss: 13664256, heapTotal: 6131200, heapUsed: 3396912 }

当我使用进程监视器检查 Node 进程的内存使用情况时。内存大小为14.5M。

我有几个问题。

  1. rss、heapTotal 和 heapUsed 是什么意思?
  2. 为什么 process.memoryUsage() 输出的内存使用值与进程监视器中显示的相同?

====2013 年 6 月 19 日更新===

我的操作系统是 Mac OS X snow leopard。

问候,

杰弗里

最佳答案

rss、heapTotal 和 heapUsed 是什么意思?

This article有一个非常有效的答案。与 nodejs 相关的所有内存都属于称为“驻留集”的东西。常驻集的一个子集是堆,它存储组成 javascript 对象(字符串、对象等)的数据。 rss 属性代表“驻留集大小”。 heapTotalheapUsed 属性告诉您堆的最大大小(可用于存储对象数据的内存总量),以及您的 nodejs 应用程序有多少堆消费。

https://stackoverflow.com/questions/17170742/

相关文章:

css - 使用渐变生成饱和度/亮度蒙版

google-chrome - CORS 错误仅发生在 Chrome 中的某些 XHR 上

qt - qml listview提高改变项目的速度

java - 创建 keystore 时出错 => 线程 "main"java.io.DataInp

python - 在 python 解释器和脚本文件中运行时的不同结果

linux - 为什么我得到数据大小大于 mss 的数据包?

json - 将 JSON 数据加载到大查询中时出错 : flat value specified

machine-learning - 最先进的增量决策树学习者

javascript - Shopify 'View all' 按钮实现

maven - 如何在 ftp 中部署 Maven Web 应用程序?