当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Node.js v8.getHeapStatistics()用法及代码示例


v8.getHeapStatistics()方法是v8模块的内置应用程序编程接口,用于获取有关从v8版本派生的堆的统计信息。

用法:

v8.getHeapStatistics();

参数:此方法没有任何参数。

返回值:此方法返回一个对象,其中包含有关版本8堆的统计信息。返回的对象通常包含一个数组,该数组包含以下字段:

  • total_heap_size:一个数字,表示总堆大小。
  • total_heap_size_executable:一个数字,表示可执行堆的总大小。
  • total_physical_size:一个数字,表示总的物理尺寸。
  • total_available_size:一个数字,表示总可用大小。
  • used_heap_size:一个数字,表示已用堆大小。
  • heap_size_limit:一个数字,表示堆大小限制。
  • malloced_memory:一个数字,表示已分配的内存。
  • peak_malloced_memory:一个数字,表示最大分配的内存。
  • does_zap_garbage:一个数字,特别是一个布尔值,表示-zap_code_space选项是否已启用。
  • number_of_native_contexts:数字,表示许多本机上下文或当前活动的顶级上下文。内存泄漏可能通过测量该数字随时间的增量来指示。
  • number_of_detached_contexts:一个数字,表示多个分离的上下文或已分离但尚未进行垃圾回收的上下文。如果内存泄漏值为非零值,则可能表明该错误。

以下示例说明了Node.js中v8.getHeapStatistics()方法的用法。



范例1: 文件名:index.js

// Accessing v8 module 
const v8 = require('v8'); 
  
// Calling v8.getHeapStatistics()  
console.log(v8.getHeapStatistics());

使用以下命令运行index.js文件:

node index.js

输出:

{ total_heap_size:6537216,
  total_heap_size_executable:1048576,
  total_physical_size:6537216,
  total_available_size:1520717240,
  used_heap_size:4199600,
  heap_size_limit:1526909922,
  malloced_memory:8192,
  peak_malloced_memory:406408,
  does_zap_garbage:0 }

范例2: 文件名:index.js

// Accessing v8 module 
const v8 = require('v8'); 
  
// Calling v8.getHeapStatistics()  
stats = v8.getHeapStatistics(); 
console.log("Heap Stastistics are:"); 
  
console.log("total_heap_size:"+stats['total_heap_size']); 
console.log("used_heap_size:"+stats['used_heap_size']); 
console.log("heap_size_limit:"+stats['heap_size_limit']); 
console.log("does_zap_garbage:"+stats['does_zap_garbage']);

使用以下命令运行index.js文件:

node index.js

输出:

Heap Stastistics are:
total_heap_size:6537216
used_heap_size:4200640
heap_size_limit:1526909922
does_zap_garbage:0

参考: https://nodejs.org/api/v8.html#v8_v8_getheapstatistics




相关用法


注:本文由纯净天空筛选整理自anwesha0107大神的英文原创作品 Node.js v8.getHeapStatistics() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。