记得以前就想过这个问题,在给人上课的时候也试过,如果不按规范关闭一个读端和一个写端,会造成进程阻塞。
以前我思考过一个问题:
我一个管道读,管道对面是好几个进程在写,会怎么样?
我一个管道写,管道对面是好几个进程在读,会怎么样?
对于一,读端会乱序;
对于二,读端会阻塞。
当pipe写端引用计数 >0 时,读端读完管道里的数据就会阻塞等待写端写入;
当pipe写端引用计数 =0 时,读端读完就返回0,进程结束。
记得以前就想过这个问题,在给人上课的时候也试过,如果不按规范关闭一个读端和一个写端,会造成进程阻塞。
以前我思考过一个问题:
我一个管道读,管道对面是好几个进程在写,会怎么样?
我一个管道写,管道对面是好几个进程在读,会怎么样?
对于一,读端会乱序;
对于二,读端会阻塞。
当pipe写端引用计数 >0 时,读端读完管道里的数据就会阻塞等待写端写入;
当pipe写端引用计数 =0 时,读端读完就返回0,进程结束。
举报文章
请选择举报类型
补充说明
0/200
上传截图
格式支持JPEG/PNG/JPG,图片不超过1.9M