欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

[apue] 多进程管道读写的一些疑问

程序员文章站 2022-07-10 12:46:14
对于一对一的pipe: 1) 写进程关闭写管道后,读进程继续读管道会导致read返回0; 2) 读进程关闭读管道后,写进程继续写管道会激发SIGPIPE信号,若捕获,则write返回-1; 而对于多对一的pipe: 1)多个写进程关闭写管道后,读进程继续读管道会导致read返回0;(同上) 2)多个 ......

对于一对一的pipe:

1) 写进程关闭写管道后,读进程继续读管道会导致read返回0;

2) 读进程关闭读管道后,写进程继续写管道会激发sigpipe信号,若捕获,则write返回-1;

而对于多对一的pipe:

1)多个写进程关闭写管道后,读进程继续读管道会导致read返回0;(同上)

2)多个读进程关闭读管道后,写进程继续写管道并不会激发sigpipe信号,而是写成功返回。(没有试大量数据,少量数据是这样)

疑问:

多个进程和一个进程共享管道在内核有何异同,为什么表现会不一样?