有人可以帮助我了解为什么pw
(the writer)计划在Start()结束吗?
我希望pw
与pr
( the reader)中的Wait()一起关闭。
答案 0 :(得分:0)
closeAfterStart
和closeAfterwait
是io.Closers
的两个切片,分别在Start
结构的Wait
和cmd
中被称为。现在,为什么呢?这两个基本上都是缓冲区(切片),需要将其写入读取。根据它们是否正在使用,它们是关闭的。例如StdInPipe
需要先读取然后再写入,因此pr
包含在{{1}中,而closeAfterStart
包含在pw
中。对closeAfterWait
进行相反的操作。
该程序只是关闭代码中不再需要的缓冲区。在StdOutPipe
中,在执行命令后调用该函数,以将错误输出写入某些输出。因此,该程序已经具有需要编写的输出。