0
我不得不在节点中调用一个命令,然后基本上移交给该命令的stdio,因此当产生子进程并将stdio
选项设置为inherit
时,之后。节点产生的子节点和反馈问题
这就是说,父进程保持运行,直到退出子进程,虽然它可能并不重要,但我真的希望退出父进程,因为它不再需要。
我已经知道我可以通过在产生子进程后立即调用child.unref()
来做到这一点,但是在执行此操作时我收到了一些非常奇怪的行为。
如:
var child = child_process.spawn('irb', [], {
detached: true,
stdio: 'inherit'
});
child.unref();
内部评级REPL正在运行,父进程已经退出,但在IRB REPL键入quit
当我得到这个:
qNameError: undefined local variable or method `uit' for main:Object
from (irb):1
from /Users/RayViljoen/.rvm/rubies/ruby-1.9.3-p385/bin/irb:16:in `<main>'
这只是其中一个例子并用irb代替节点或咖啡具有相似的效果。事实上,这个问题看起来与大多数交互式控制台是作为子进程产生的,然后从父进程中移除相似。
有没有人经历过这个或知道如何正确地做到这一点?