进程通信(管道单向通信)

 1 #include
 2#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://pwwzsj.com/article/ijpcop.html