管道
来源:互联网 发布:网络销售培训学校 编辑:程序博客网 时间:2024/06/08 19:46
1.管道特点
1)半双工;
2)只能适用于具有亲缘关系的进程(如父子进程)之间的通信;
3)自成一种独立的文件系统,存在于内存之中;
4)每次读数据都是从管道缓冲区的头部开始,写数据都是从管道的尾部开始。
2.管道表示
管道两端可以用描述字fd[0]和fd[1]来表示。fd[0]称为管道的读端,fd[1]称为管道的写端。
3.管道读规则
1)如果管道的写端不存在,则读端认为已经读到了数据的末尾,读函数返回的字节数为0;
2)如果管道的写端存在,则要看读端请求读的字节数是否大于PIPE_BUF。如果大于,则返回管道内现有的字节数;否则,返回读端实际请求的字节数。
4.管道写规则
1)如果管道的读端不存在,向管道写数据将会出现错误。内核将会向写进程发送SIFPIPE信号,终止该进程;
2)向管道写入数据将不保证写入的原子性。只要缓冲区有空闲区域,写进程就会向管道内写入数据直至写满,如果此时读进程仍未读走数据,则写进程将一直被阻塞。
- 管道
- 管道
- 管道
- 管道
- 管道
- 管道
- 管道
- 管道
- 管道
- 管道
- 管道
- <>管道
- 管道
- 管道
- 管道
- 管道
- 管道
- |管道
- 嵌入式系统学习笔记(2)
- Advanced spoofing (Blind)
- 浅谈以太网的Auto-Negotiation和Auto-Sense机制
- setAutoCommit(),getAutoCommit(),Commit()
- 鸭子-策略模式(Strategy)
- 管道
- java的缺点
- 选择SOA的原因和时机
- 用 Win32 APIs 枚举应用程序窗口和进程和关闭进程
- 回来留个脚印-出个概率题
- 1K后门代码
- 几种坐标系
- 6-4 滚动区域(Scrolling Areas)
- 【原创】消失了N个月,想重出江湖!