我的观点:有发送和接收两个文件描述符。
理由:
// Filename:Worker.js
this._child = child_process_1.spawn(
...
stdio: ['ignore', 'pipe', 'pipe', 'pipe', 'pipe', 'pipe', 'pipe'],
);
this._channel = new Channel_1.Channel({
producerSocket: this._child.stdio[3], // 发送文件描述符
consumerSocket: this._child.stdio[4], // 接收文件描述符
pid: this._pid
});
本问题针对课程原话:如果真是匿名管道的话,其实它需要两个文件描述符,一个作为输入一个作为输出,但是这里呢我们只看到一个所以它是一个全双工的。