我有一个节点应用程序启动一个。我使用spawn()
方法而不是fork()
来创建子实例,因为我有时需要使用不同的节点命令行参数(例如debug)来启动子进程。
考虑以下示例:
的 master.js 的
var child = require("child_process").spawn("node", ["child"]);
child.stdout.pipe(process.stdout, { end: false });
的 child.js 的
console.log("Hello World!");
console.log(require("util").format("Hello World2!"));
setTimeout(function(){
console.log("Error!");
console.log(require("util").format("Error2!"));
process.exit(1);
},2000);
运行 master.js (在Windows上)实际输出
Hello World!
Hello World2!
Error!
"错误2!"消息丢失了,我不明白为什么。你知道这里出了什么问题吗?
提前致谢!