[apue] 多进程管道读写的一些疑问
程序员文章站
2022-04-06 12:57:27
对于一对一的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信号,而是写成功返回。(没有试大量数据,少量数据是这样)
疑问:
多个进程和一个进程共享管道在内核有何异同,为什么表现会不一样?
上一篇: Mysql Innodb 锁机制
下一篇: MySQL索引 - 聚簇索引