对于一对一的pipe:git
1) 写进程关闭写管道后,读进程继续读管道会致使read返回0;github
2) 读进程关闭读管道后,写进程继续写管道会激发SIGPIPE信号,若捕获,则write返回-1;测试
而对于多对一的pipe:进程
1)多个写进程关闭写管道后,读进程继续读管道会致使read返回0;(同上)ip
2)多个读进程关闭读管道后,写进程继续写管道并不会激发SIGPIPE信号,而是写成功返回。(没有试大量数据,少许数据是这样)get
疑问:it
多个进程和一个进程共享管道在内核有何异同,为何表现会不同?pip
测试代码 ast