进程间通信----无名管道
Posted 吾乃世间奇才
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进程间通信----无名管道相关的知识,希望对你有一定的参考价值。
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
int main(int argc, char * argv[])
{
int ret = 0;
int pipefd[2] = {0};
ret = pipe(pipefd);
if(ret == -1)
perror(argv[0]);
ret = fork();
if(ret > 0){
printf("the son pid is %d\\n", ret);
while(1){
printf("I am is father process\\n");
write(pipefd[1], "hello", 5);
sleep(1);
}
}else if( ret == 0){
char arr[20];
while(1){
memset(arr, 0, 20);
read(pipefd[0], arr, 5);
printf("I'am is the son process, the pipe data is %s\\n", arr);
}
}else{
printf("perror\\n");
}
return 0;
}
输出
以上是关于进程间通信----无名管道的主要内容,如果未能解决你的问题,请参考以下文章