命名管道的创建与使用
来源:互联网 发布:knockout.js easyui 编辑:程序博客网 时间:2024/06/05 02:02
实例1
在一个程序中实现命名管道的创建与使用 #include<sys/types.h> #include<sys/stat.h> #include<unistd.h> #include<fcntl.h> int main(void) { char buf[80]; int fd; unlink( "zieckey_fifo" ); mkfifo( "zieckey_fifo", 0777 ); if ( fork() > 0 ) { char s[] = "Hello!\n"; fd = open( "zieckey_fifo", O_WRONLY ); write( fd, s, sizeof(s) ); //close( fd ); } else { fd = open( "zieckey_fifo", O_RDONLY ); read( fd, buf, sizeof(buf) ); printf("The message from the pipe is:%s\n", buf ); //close( fd ); } return 0; } 执行hello!
此示例代码意在体现出命名管道与普通管道的区别,命名管道是以一个普通文件的形式出现的,包括三个文件,创建命名管道、写管道、读管道
1. 创建命名管道 #include<sys/types.h> #include<sys/stat.h> #include<unistd.h> #include<fcntl.h> int main(void) { char buf[80]; int fd; unlink( "zieckey_fifo" ); mkfifo( "zieckey_fifo", 0777 );}
2. 写命名管道代码
#include<sys/types.h> #include<sys/stat.h> #include<unistd.h> #include<fcntl.h> int main(void){ int fd; char s[] = "Hello!\n"; fd = open( "zieckey_fifo", O_WRONLY ); while(1) { write( fd, s, sizeof(s) ); sleep(1); }
3. 读命名管道代码
#include<sys/types.h>
#include<sys/stat.h>
#include<unistd.h>
#include<fcntl.h>
int main(void){
int fd;
char buf[80];
fd = open( "zieckey_fifo", O_RDONLY );
while(1) {
read( fd, buf, sizeof(buf) );
printf("%s\n", buf);
sleep(1);
}
return 0;
}
return 0; }- 命名管道的创建与使用
- 命名管道的创建和使用
- 命名管道的创建
- 命名管道的使用
- 命名管道的使用
- 使用WCF 命名管道 创建的局域网聊天
- 命名管道的简单使用
- 命名管道的简单使用
- 命名管道文件的使用
- 匿名管道 与 命名管道/FIFO管道 的特点
- 创建命名管道示例
- 匿名管道 与 命名管道
- 匿名管道与命名管道
- .net 命名管道(NamedPipe) 的使用
- 使用重叠IO的命名管道服务器
- 使用完成例程的命名管道服务器
- VC 命名管道使用的注意事项
- .net 命名管道(NamedPipe) 的使用
- NS3 的安装
- js 知识点
- How do I call a C++ function from C?
- 2011-7-22 问题
- linux下history(历史)命令用法详解
- 命名管道的创建与使用
- Solmyr 的小品文系列之九:次序问题
- 存储过程格式
- C语言中的位运算&结构体浅析 — <编程之美>1.2学习笔记
- ZOJ3121 POJ3488 Arne Saknussemm
- cisco3550交换机恢复出厂设置
- 海康卫视 硬盘摄像机
- 多线程编程
- 2011-07-12-一体的OTG问题