v8.getCppHeapStatistics([detailLevel])
使用 V8 CollectStatistics() 函数获取关于内存消耗和利用率的 Cpp堆 统计信息,该函数可能会随 V8 版本的不同而变化。
【Retrieves CppHeap statistics regarding memory consumption and
utilization using the V8 CollectStatistics() function which
may change from one V8 version to the
next.】
detailLevel<string> | <undefined>: 默认值:'detailed'。 指定返回统计信息的详细程度。 可接受的值有:'brief':简要统计仅包含整个堆的顶层已分配和已使用内存统计信息。'detailed':详细统计信息还包括每个空间和页面的细分,以及空闲列表统计和对象类型直方图。
它返回一个结构类似于 cppgc::HeapStatistics 对象的对象。有关该对象属性的更多信息,请参阅 V8 文档。
【It returns an object with a structure similar to the
cppgc::HeapStatistics object. See the V8 documentation
for more information about the properties of the object.】
// Detailed
({
committed_size_bytes: 131072,
resident_size_bytes: 131072,
used_size_bytes: 152,
space_statistics: [
{
name: 'NormalPageSpace0',
committed_size_bytes: 0,
resident_size_bytes: 0,
used_size_bytes: 0,
page_stats: [{}],
free_list_stats: {},
},
{
name: 'NormalPageSpace1',
committed_size_bytes: 131072,
resident_size_bytes: 131072,
used_size_bytes: 152,
page_stats: [{}],
free_list_stats: {},
},
{
name: 'NormalPageSpace2',
committed_size_bytes: 0,
resident_size_bytes: 0,
used_size_bytes: 0,
page_stats: [{}],
free_list_stats: {},
},
{
name: 'NormalPageSpace3',
committed_size_bytes: 0,
resident_size_bytes: 0,
used_size_bytes: 0,
page_stats: [{}],
free_list_stats: {},
},
{
name: 'LargePageSpace',
committed_size_bytes: 0,
resident_size_bytes: 0,
used_size_bytes: 0,
page_stats: [{}],
free_list_stats: {},
},
],
type_names: [],
detail_level: 'detailed',
}); // Brief
({
committed_size_bytes: 131072,
resident_size_bytes: 131072,
used_size_bytes: 128864,
space_statistics: [],
type_names: [],
detail_level: 'brief',
});