node/benchmark/fs/bench-statSync.js
CanadaHonk ea88a3e1f2
fs: improve error perf of sync lstat+fstat
PR-URL: https://github.com/nodejs/node/pull/49868
Refs: https://github.com/nodejs/performance/issues/106
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-11-23 00:25:15 +00:00

27 lines
508 B
JavaScript

'use strict';
const common = require('../common');
const fs = require('fs');
const bench = common.createBenchmark(main, {
n: [1e4],
statSyncType: ['fstatSync', 'lstatSync', 'statSync'],
});
function main({ n, statSyncType }) {
const arg = (statSyncType === 'fstatSync' ?
fs.openSync(__filename, 'r') :
__dirname);
const fn = fs[statSyncType];
bench.start();
for (let i = 0; i < n; i++) {
fn(arg);
}
bench.end(n);
if (statSyncType === 'fstatSync')
fs.closeSync(arg);
}