bench: Move process_loop to misc/spawn-echo
authorisaacs <i@izs.me>
Tue, 12 Feb 2013 06:42:19 +0000 (22:42 -0800)
committerisaacs <i@izs.me>
Tue, 19 Feb 2013 22:14:34 +0000 (14:14 -0800)
benchmark/misc/spawn-echo.js [new file with mode: 0644]
benchmark/process_loop.js [deleted file]

diff --git a/benchmark/misc/spawn-echo.js b/benchmark/misc/spawn-echo.js
new file mode 100644 (file)
index 0000000..2b1b989
--- /dev/null
@@ -0,0 +1,25 @@
+var common = require('../common.js');
+var bench = common.createBenchmark(main, {
+  thousands: [1]
+});
+
+var spawn = require('child_process').spawn;
+function main(conf) {
+  var len = +conf.thousands * 1000;
+
+  bench.start();
+  go(len, len);
+}
+
+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);
+  });
+}
diff --git a/benchmark/process_loop.js b/benchmark/process_loop.js
deleted file mode 100644 (file)
index eeba06a..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-var util = require("util"),
-    childProcess = require("child_process");
-
-function next (i) {
-  if (i <= 0) return;
-
-  var child = childProcess.spawn("echo", ["hello"]);
-
-  child.stdout.addListener("data", function (chunk) {
-    util.print(chunk);
-  });
-
-  child.addListener("exit", function (code) {
-    if (code != 0) process.exit(-1);
-    next(i - 1);
-  });
-}
-
-next(500);