performance.timerify(fn[, options])
历史
版本 | 变化 |
---|---|
v16.0.0 | 添加了直方图选项。 |
v16.0.0 | 重新实现以使用 pure-JavaScript 和计时异步函数的能力。 |
v8.5.0 | 添加于:v8.5.0 |
参数
fn
<Function>options
<Object>histogram
<RecordableHistogram> 使用perf_hooks.createHistogram()
创建的直方图对象,它将以纳秒为单位记录运行时持续时间。
此属性是 Node.js 的扩展。它在 Web 浏览器中不可用。
将一个函数包装在一个新函数中,该函数测量被包装函数的运行时间。 PerformanceObserver
必须订阅 'function'
事件类型才能访问计时详细信息。
const {
performance,
PerformanceObserver
} = require('node:perf_hooks');
function someFunction() {
console.log('hello world');
}
const wrapped = performance.timerify(someFunction);
const obs = new PerformanceObserver((list) => {
console.log(list.getEntries()[0].duration);
performance.clearMarks();
performance.clearMeasures();
obs.disconnect();
});
obs.observe({ entryTypes: ['function'] });
// A performance timeline entry will be created
wrapped();
如果包装的函数返回一个promise,一个finally 处理程序将附加到promise 上,并且一旦调用finally 处理程序就会报告持续时间。
相关用法
- Node.js performance.eventLoopUtilization([utilization1[, utilization2]])用法及代码示例
- Node.js perf_hooks.monitorEventLoopDelay([options])用法及代码示例
- Node.js perf_hooks.PerformanceObserver.observe(options)用法及代码示例
- Node.js process.stdin用法及代码示例
- Node.js process.arch()用法及代码示例
- Node.js path.basename()用法及代码示例
- Node.js process.nextTick(callback[, ...args])用法及代码示例
- Node.js process.noDeprecation用法及代码示例
- Node.js process.setUncaughtExceptionCaptureCallback()用法及代码示例
- Node.js process.execPath用法及代码示例
- Node.js process.getgid()用法及代码示例
- Node.js process.setgid(id)用法及代码示例
- Node.js promiseHooks.createHook(callbacks)用法及代码示例
- Node.js process.chdir(directory)用法及代码示例
- Node.js process.setgid()用法及代码示例
- Node.js promiseHooks.onAfter(after)用法及代码示例
- Node.js process.getuid()用法及代码示例
- Node.js process.ppid用法及代码示例
- Node.js push()用法及代码示例
- Node.js process.report.reportOnSignal用法及代码示例
- Node.js process.report.directory用法及代码示例
- Node.js process.umask(mask)用法及代码示例
- Node.js process.setgroups(groups)用法及代码示例
- Node.js process.emitWarning()用法及代码示例
- Node.js path.resolve()用法及代码示例
注:本文由纯净天空筛选整理自nodejs.org大神的英文原创作品 performance.timerify(fn[, options])。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。