我正在开发nodeJS应用程序,该应用程序是使用同步方法编写的。主要用于处理文件和生成子进程。我需要测量由于阻塞主线程而产生的开销。衡量这一点的最佳方法是什么?
我尝试在函数之前和之后使用 Date.now
但它给了我不可靠的结果。
应用程序由 node main.js 参数运行
最佳答案
使用内置 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/