Windows c运行时中的_pipe
函数指定类型为unsigned int
的size参数,该参数是要为管道数据保留的字节数。
如何在不占用空间的情况下连续进行管道传输?我会创建一个很大的管道缓冲区吗?我可以将管道冲洗到其他存储设备吗?
此示例程序演示了可能发生的问题:
int pipefd[2];
_pipe(pipefd, 1, _O_TEXT); // pipe size of 1 byte
int write_result = _write(pipefd[1], "good-bye", 9); // OOPS, wrote 9 bytes
// more writes ....
_close(pipefd[1]);