假设我调用了一个函数,
const data = await someFunction()
我想计算这个函数的执行时间。
为此我尝试过,
let startTime = Date.now();
const data = await someFunction()
let endTime = Date.now();
我计算了 endTime-startTime 和我得到的结果之间的差异,我认为以毫秒为单位并将其转换为秒。
我想就此提出第二意见,无论这是计算的选项之一,还是有一些更好的方法可以让我以秒为单位提供执行时间。
答案 0 :(得分:2)
是的,还有一些更有趣的方法:
更准确的节点测试方法是使用:
const start = process.hrtime()
// awaited function
const result = process.hrtime(start);
// This will give results in nanoseconds
另一个有趣的方法是使用 performance hooks:
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');
// await your function
performance.mark('B');
performance.measure('A to B', 'A', 'B');
答案 1 :(得分:1)
你有没有尝试过 console.time() ?
def createFile(A,rows,filename):
f=open(filename,'w')
for row in range(rows):
f.write(*A[row]) # A is a 2D matrix with integers
f.close()