请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

请确认该表述是否有误:child_process_1.spawn创建子进程时只有一个文件描述符。

我的观点:有发送和接收两个文件描述符。
理由:

// 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
        });

本问题针对课程原话:如果真是匿名管道的话,其实它需要两个文件描述符,一个作为输入一个作为输出,但是这里呢我们只看到一个所以它是一个全双工的。

正在回答

1回答

现在的代码我们看,课程里讲的是没任何问题的,只有一个文件描述符,通过这个文件描述符既可以发数据又可以接受数据,所以叫全双工;管道中的每个描述符都是单工的

0 回复 有任何疑惑可以回复我~
  • 提问者 GavinXu89 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2022-05-23 17:59:59
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信