Linux 管道通讯编程整理
2015-12-27 14:20
459 查看
5.1创建无名管道
5.1.1 函数名
pipe
5.1.2 函数原形
int pipe(int pipefd[2])
5.1.3 函数功能
创建单向数据从传输的管道,用于进程间的通信
5.1.4 所属头文件
<unistd.h>
5.1.5 返回值
成功:返回0 失败:返回:-1
5.1.6参数说明
pipefd[0]:指向读端,存储读端文件描述符fd
pipefd[1]:指向写端,存储写端文件描述符fd
5.1.7 注意
为了使父子进程通信,必须将pipe在进程创建fork之前创建,否则,父进程和子进程都各自创建一个管道pipe,相互独立,所以达不到通信的目的
5.1.8 demo
5.2创建有名管道
5.2.1 函数名
mkfifo
5.2.2 函数原形
int mkfifo(const char *pathname,mode_t mode)
5.2.3 函数功能
创建一个fifo文件(有名管道)
5.2.4 所属头文件
<sys/types.h> <sys/stat.h>
5.2.5 返回值
成功:返回0 失败:返回-1
5.2.6 参数说明
pathname:要创建的fifo文件的名字(带路径)、
mode:创建的fifo文件的访问权限 (见open,例:666)
5.3删除有名管道
5.3.1 函数名
unlink
5.3.2 函数原形
int unlink(const char *pathname)
5.3.3 函数功能
删除文件
5.3.4 所属头文件
<unistd.h>
5.3.5 返回值
成功:放回0 失败:返回-1
5.3.6 参数说明
pathname:待删除文件的名字(含路径)
5.3.7 demo
一旦运行写进程,那么该进程处于阻塞的状态,直到有进程读取该fifo文件
5.1.1 函数名
pipe
5.1.2 函数原形
int pipe(int pipefd[2])
5.1.3 函数功能
创建单向数据从传输的管道,用于进程间的通信
5.1.4 所属头文件
<unistd.h>
5.1.5 返回值
成功:返回0 失败:返回:-1
5.1.6参数说明
pipefd[0]:指向读端,存储读端文件描述符fd
pipefd[1]:指向写端,存储写端文件描述符fd
5.1.7 注意
为了使父子进程通信,必须将pipe在进程创建fork之前创建,否则,父进程和子进程都各自创建一个管道pipe,相互独立,所以达不到通信的目的
5.1.8 demo
5.2创建有名管道
5.2.1 函数名
mkfifo
5.2.2 函数原形
int mkfifo(const char *pathname,mode_t mode)
5.2.3 函数功能
创建一个fifo文件(有名管道)
5.2.4 所属头文件
<sys/types.h> <sys/stat.h>
5.2.5 返回值
成功:返回0 失败:返回-1
5.2.6 参数说明
pathname:要创建的fifo文件的名字(带路径)、
mode:创建的fifo文件的访问权限 (见open,例:666)
5.3删除有名管道
5.3.1 函数名
unlink
5.3.2 函数原形
int unlink(const char *pathname)
5.3.3 函数功能
删除文件
5.3.4 所属头文件
<unistd.h>
5.3.5 返回值
成功:放回0 失败:返回-1
5.3.6 参数说明
pathname:待删除文件的名字(含路径)
5.3.7 demo
一旦运行写进程,那么该进程处于阻塞的状态,直到有进程读取该fifo文件
相关文章推荐
- Linux命令小计
- ARM-LINUX开发环境的搭建(一)
- linux命令学习(6)
- Linux库函数文件编程类整理
- centos7增加win7的登录选项
- linux编译azkaban
- 老男孩教育--梦开始的地方!!
- Linux学习资料
- 深入理解linux操作系统中的高端内存
- linux red hat 给普通用户开启root权限
- centos6中安装python2.7 与python3.3
- linux中怎样设置DHCP
- Linux经常使用命令(十一) - more
- centos7配置wifi驱动
- linux里查看mysql的一些命令
- VI编辑常用命令
- linux(centos)搭建SVN服务器
- linux中删除文件名称乱码
- linux vi保存退出命令 (如何退出vi)
- [转载]几个有趣的Linux命令