首页 > 其他 > 详细

管道的理解

时间:2021-04-10 16:44:47      阅读:14      评论:0      收藏:0      [点我收藏+]

首先父进程在创建子进程之前打开的文件,父子可以操作同一个文件,

  这块难理解的是父子进程如果是在fork之后打开的文件,而且是相同名字的文件,那么在磁盘上是怎么存储的呢

 

利用pipe函数,会创建一个管道文件,但是这个文件有俩个文件描述符,所以要在fork之前创建管道,这样可以实现共享,

管道的实质是内核缓冲区,内部使用环形队列实现,这个可以理解成管道文件和普通文件不一样,可以把内核缓冲区和管道文件等同

 

使用FIFO的时候

  1.不能退出进程

  2.不能在读之前提前关闭管道文件

 

这俩个问题究其根因是操作管道文件时感觉跟操作普通文件不一样,读写的时候俩端必须都打开文件

 

管道的理解

原文:https://www.cnblogs.com/mr-cool/p/14640526.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!