我确实有一个启动一个节点应用程序。我使用该spawn()
方法而不是fork()
创建子实例,因为有时我需要使用不同的节点命令行参数(例如调试)来启动子进程。
考虑以下示例:
大师.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!” 消息丢失,我不明白为什么。你知道这里出了什么问题吗?
提前致谢!