创建一个管道文件:
#include<stdio.h>
#include<unistd.h>
#include<stdlib.h>
#include<sys/types.h>
#include<sys/stat.h>
//创建管道文件,可以在没有亲缘关系的进程间通信
int main()
{
int ret=0;
ret=mkfifo("./myfifo", 0777);
if(ret<0) {printf("create myfifo fail\n"); return -1;}
printf("create myfifo succ\n");
return 0;
}
运行结果:
第一个进程代码:
#include<stdio.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<fcntl.h>
#include<unistd.h>
//第一个程序先打印5条数据,第二个程序才打印,模拟非亲缘关系进程通信