/
githubmirror
/
node
Обзор
Документация
Войти
/
githubmirror
/
node
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
benchmark/fs/bench-ftruncateSync.js
40 строк
769 B
André Alves
fs: improve error performance for `ftruncateSync`
11 окт 2023, 01:24
Не верифицирован
11 окт 2023, 01:24
ed49722
Код
Авторство
О чём код?
'use strict'; const common = require('../common'); const fs = require('fs'); const tmpdir = require('../../test/common/tmpdir'); tmpdir.refresh(); const path = tmpdir.resolve(`new-file-${process.pid}`); fs.appendFileSync(path, 'Some content.'); const bench = common.createBenchmark(main, { type: ['invalid', 'valid'], n: [1e4], }); function main({ n, type }) { let fd; switch (type) { case 'invalid': fd = 1 << 30; break; case 'valid': fd = fs.openSync(path, 'r+'); break; default: throw new Error('Invalid type'); } bench.start(); for (let i = 0; i < n; i++) { try { fs.ftruncateSync(fd, 4); } catch { // do nothing } } bench.end(n); if (type === 'valid') fs.closeSync(fd); }