小编gre*_*mer的帖子

NodeJS 中的 GC 操作类型

通过使用perf_hooks我们可以获得一些关于 NodeJS 中垃圾收集的信息。PerformanceObserver我们可以像下面这样在每个垃圾收集(?)上使用哪个调用来使用它。

        const obs = new perf_hooks.PerformanceObserver(list => {
            console.log(list.getEntries()[0]);
        });
        obs.observe({ entryTypes: ['gc'] });
Run Code Online (Sandbox Code Playgroud)

这也是来自 console.log 的响应:

PerformanceEntry {
  name: 'gc',
  entryType: 'gc',
  startTime: 1150138386.4544,
  duration: 0.08009982109069824,
  detail: { kind: 4, flags: 0 }
}
Run Code Online (Sandbox Code Playgroud)

我正在尝试在网上查找有关detail.kind此回复内容的信息。有人可以向我解释它是什么吗?

我发现NodeJS中有四种gc:

perf_hooks.constants.NODE_PERFORMANCE_GC_MAJOR
perf_hooks.constants.NODE_PERFORMANCE_GC_MINOR
perf_hooks.constants.NODE_PERFORMANCE_GC_INCREMENTAL
perf_hooks.constants.NODE_PERFORMANCE_GC_WEAKCB
Run Code Online (Sandbox Code Playgroud)

参考(https://nodejs.org/docs/latest-v16.x/api/perf_hooks.html#performanceentrykind

但这些类型的含义是什么?

谢谢你的帮助!

PS:duration确定操作执行了多长时间?

javascript v8 node.js

1
推荐指数
1
解决办法
235
查看次数

标签 统计

javascript ×1

node.js ×1

v8 ×1