0
0
mirror of https://github.com/nodejs/node.git synced 2024-12-01 16:10:02 +01:00
nodejs/benchmark/timers/timers-cancel-pooled.js
Ruben Bridgewater c713f079f1
benchmark: (timers) refactor
PR-URL: https://github.com/nodejs/node/pull/18320
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-02-01 10:49:03 +01:00

33 lines
621 B
JavaScript

'use strict';
const common = require('../common.js');
const assert = require('assert');
const bench = common.createBenchmark(main, {
millions: [5],
});
function main({ millions }) {
const iterations = millions * 1e6;
var timer = setTimeout(() => {}, 1);
for (var i = 0; i < iterations; i++) {
setTimeout(cb, 1);
}
var next = timer._idlePrev;
clearTimeout(timer);
bench.start();
for (var j = 0; j < iterations; j++) {
timer = next;
next = timer._idlePrev;
clearTimeout(timer);
}
bench.end(iterations / 1e6);
}
function cb() {
assert.fail('Timer should not call callback');
}