Sha256: 9b0df296228655190132e5560b05c3c127e5403f9ce4c70660f9b0f9640067d5

Contents?: true

Size: 1.07 KB

Versions: 5

Compression:

Stored size: 1.07 KB

Contents

'use strict';

var common = require('../common.js');
var bench = common.createBenchmark(main, {
  millions: [2]
});

process.maxTickDepth = Infinity;

function main(conf) {
  var n = +conf.millions * 1e6;

  function cb3(arg1, arg2, arg3) {
    if (--n) {
      if (n % 3 === 0)
        process.nextTick(cb3, 512, true, null);
      else if (n % 2 === 0)
        process.nextTick(cb2, false, 5.1);
      else
        process.nextTick(cb1, 0);
    } else
      bench.end(+conf.millions);
  }
  function cb2(arg1, arg2) {
    if (--n) {
      if (n % 3 === 0)
        process.nextTick(cb3, 512, true, null);
      else if (n % 2 === 0)
        process.nextTick(cb2, false, 5.1);
      else
        process.nextTick(cb1, 0);
    } else
      bench.end(+conf.millions);
  }
  function cb1(arg1) {
    if (--n) {
      if (n % 3 === 0)
        process.nextTick(cb3, 512, true, null);
      else if (n % 2 === 0)
        process.nextTick(cb2, false, 5.1);
      else
        process.nextTick(cb1, 0);
    } else
      bench.end(+conf.millions);
  }
  bench.start();
  process.nextTick(cb1, true);
}

Version data entries

5 entries across 4 versions & 1 rubygems

Version Path
node-compiler-0.9.1 vendor/node/benchmark/process/next-tick-depth-args.js
node-compiler-0.9.0 vendor/node-v7.2.1/benchmark/process/next-tick-depth-args.js
node-compiler-0.8.0 vendor/node-v7.2.0/benchmark/process/next-tick-depth-args.js
node-compiler-0.7.0 vendor/node-v6.9.1/benchmark/process/next-tick-depth-args.js
node-compiler-0.7.0 vendor/node-v7.1.0/benchmark/process/next-tick-depth-args.js