进程间通信--管道

 1)pile函数用于创建管道

       #include <unistd.h>

       int pipe(int pipefd[2]);

调用pipe函数创建管道,pipefd数组保存用于I/O的文件描述符。

函数参数是长度为2的int型数组的地址值,其中pipefd[0] 是通过管道接收数据时使用的文件描述符,即管道出口;pipefd[1]是通过管道传输数据时使用的文件描述符,即管道入口。

管道并非属于进程的资源,而和套接字一样,属于操作系统。fork函数复制的是用于管道I/O的文件描述符。

数据进入管道后成为无主数据,先通过read函数读取数据的进程将得到数据。因此一个管道无法完成双向通信任务,需要创建两个管道,各自负责不同的数据流向。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值