summaryrefslogtreecommitdiff
path: root/benchmark/child_process/spawn-echo.js
blob: 72822f87db8abaf2207b85843b6a939ed44dd6f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
'use strict';
var common = require('../common.js');
var bench = common.createBenchmark(main, {
  n: [1000]
});

var spawn = require('child_process').spawn;
function main(conf) {
  var n = +conf.n;

  bench.start();
  go(n, n);
}

function go(n, left) {
  if (--left === 0)
    return bench.end(n);

  var child = spawn('echo', ['hello']);
  child.on('exit', function(code) {
    if (code)
      process.exit(code);
    else
      go(n, left);
  });
}