當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Node.js performance.timerify(fn[, options])用法及代碼示例


performance.timerify(fn[, options])

曆史
版本變化
v16.0.0

添加了直方圖選項。

v16.0.0

重新實現以使用 pure-JavaScript 和計時異步函數的能力。

v8.5.0

添加於:v8.5.0


參數

此屬性是 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 處理程序就會報告持續時間。

相關用法


注:本文由純淨天空篩選整理自nodejs.org大神的英文原創作品 performance.timerify(fn[, options])。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。