子プロセスを生成するときに追加の stdio (fd=4) を使用する node.js API ドキュメント:
// Open an extra fd=4, to interact with programs present a
// startd-style interface.
spawn('prg', [], { stdio: ['pipe', null, null, null, 'pipe'] });
そのstdioは、を介して親プロセスで利用できますChildProcess.stdio[fd]
。
子プロセスはこれらの余分な stdio にどのようにアクセスできますか? ファイル記述子 3 (fd=3) でパイプの代わりにストリームを使用しましょう。
/* parent process */
// open file for read/write
var mStream = fs.openSync('./shared-stream', 'r+');
// spawn child process with stream object as fd=3
spawn('node', ['/path/to/child.js'], {stdio: [0, 1, 2, mStream] });