进程通信(管道单向通信)
1 #include2#include 3#include 4#include 5#include 6int main() 7 { 8 int pipefd[2]; 9 if(pipe(pipefd)==-1) 10 { 11 perror("pipe"); 12 return -1; 13 } 14 pid_t pid=fork(); 15 if(pid<0) 16 { 17 perror("pid"); 18 return -1; 19 } 20 else if(pid==0) 21 { 22 close(pipefd[0]); 23 char buf[20]="we are young"; 24 int i=0; 25 while(i<10) 26 { 27 write(pipefd[1],buf,strlen(buf)); 28 sleep(1); 29 i++; 30 } 31 exit(1); 32 } 33 else 34 { 35 close(pipefd[1]); 36 char buf[200]; 37 int j=0; 38 while(j<10) 39 { 40 memset(buf,'\0',sizeof(buf)); 41 ssize_t size= read(pipefd[0],buf,sizeof(buf)); 42 if(size>0) 43 printf("%s\n",buf); 44 j++; 45 } 46 if(waitpid(pid,NULL,0)==pid) 47 { 48 printf("wait success\n"); 49 } 50 } 51 return 0; 52 } Makefile: 1 Pipe:pipe.c 2 gcc -o $@ $^ 3.PHONY:clean 4clean: 5 rm -f pipe
防城ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!
标题名称:进程通信(管道单向通信)
URL网址:http://cdiso.cn/article/ijpcop.html