我正在使用全都使用同步方法编写的nodeJS应用程序。主要用于处理文件和生成子进程。由于阻塞主线程,我需要测量开销。衡量这一点的最佳方法是什么?
我尝试在函数之前和之后使用Date.now,但是它给了我不可靠的结果。
应用程序由node main.js arguments运行可能很重要

最佳答案

使用内置API的Node.js

https://nodejs.org/api/perf_hooks.html

从文档复制

const { PerformanceObserver, performance } = require('perf_hooks');

const obs = new PerformanceObserver((items) => {
  console.log(items.getEntries()[0].duration);
  performance.clearMarks();
});
obs.observe({ entryTypes: ['measure'] });

performance.mark('A');
doSomeLongRunningProcess(() => {
  performance.mark('B');
  performance.measure('A to B', 'A', 'B');
});

关于javascript - 使用同步方法衡量开销的最佳方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59707888/

10-12 07:13