:Linux之命名管道
来源:百度文库 编辑:九乡新闻网 时间:2024/04/27 16:37:46
#include#include#include#include#include#include#include#define FIFO_SERVER "fifoserver"#define BUFFERSIZE 80
void main(){ int fd; int a; char w_buf[BUFFERSIZE]="before read's test.",r_buf[BUFFERSIZE]; char t[]="a test string."; int real_wnum; if((mkfifo(FIFO_SERVER,O_CREAT|O_EXCL)<0)&&(errno!=EEXIST)){ printf("cannot create fifoserver\n"); //exit(0); } printf("fifoserver is created successfull!\n"); fd=open(FIFO_SERVER,O_RDWR); a=fork(); if(a<0){ printf("cannot create process!\n"); //exit(0); } else if(a>0){ printf("读数据前缓冲区信息: %s\n",w_buf); read(fd,r_buf,sizeof(w_buf)); printf("读数据后缓冲区信息: %s\n",r_buf); close(fd); } else{ if(fd==-1){ printf("open error!\n"); //exit(-1); } real_wnum=write(fd,t,strlen(t)); if(real_wnum==-1){ printf("write to fifo error!\n"); //exit(-1); } else{ printf("write to fifo success!\n"); } close(fd); }}
void main(){ int fd; int a; char w_buf[BUFFERSIZE]="before read's test.",r_buf[BUFFERSIZE]; char t[]="a test string."; int real_wnum; if((mkfifo(FIFO_SERVER,O_CREAT|O_EXCL)<0)&&(errno!=EEXIST)){ printf("cannot create fifoserver\n"); //exit(0); } printf("fifoserver is created successfull!\n"); fd=open(FIFO_SERVER,O_RDWR); a=fork(); if(a<0){ printf("cannot create process!\n"); //exit(0); } else if(a>0){ printf("读数据前缓冲区信息: %s\n",w_buf); read(fd,r_buf,sizeof(w_buf)); printf("读数据后缓冲区信息: %s\n",r_buf); close(fd); } else{ if(fd==-1){ printf("open error!\n"); //exit(-1); } real_wnum=write(fd,t,strlen(t)); if(real_wnum==-1){ printf("write to fifo error!\n"); //exit(-1); } else{ printf("write to fifo success!\n"); } close(fd); }}
Linux之命名管道
Linux之匿名管道
Linux管道的实现机制
Linux下有趣的命名
命名之礼
《金瓶梅》命名之来由
中草药之命名
“命名”
Linux文件系统之sysfs
金庸人物命名之道
Linux下进程间通信:管道-pipe函数(转载转载)
Linux之VI命令详解
Linux之GCC经典入门教程
linux
十二生肖命名之巳蛇、午马、未羊
浅述穴位之命名--华盖、神阙、关元穴
千奇百怪:揭开各大跨国公司的命名之谜!
Linux之父Linus Torvalds:C++一无是处
Linux之VI de 命令详解
linux进程/内存管理的数据结构之
Linux文件系统之文件的读写
Linux文件系统之目录的建立
Linux之线程同步篇|Linux,线程同步-中国源码网: 开放源代码&&编程
Linux内核跟踪之syscall tracer | Linux系统(vps) - 小丽电脑论坛