只能在有亲缘关系的进程之间传送。
pipe(int pipefd[2])管道.
定义一个int数组,在管道中穿行,fd[0]代表读,fd[1]代表写。用linux文件编程可进行读写操作。假设在父进程进行写入管道:先关闭读取管道,在在此用write进行操作。
子进程进行读取操作,关闭写入操作,在此进行,read读取。
mkfifo无名管道,链接无亲缘关系的进程,不会在里面存放数据只能传递。基本原理,在一个进程中调用mkfifo(文件名,0666)0666代表创建。
然后进行打开文件,进行写入操作
这里mkfifo创建文件,0666代表可读可写。
返回-1并且errno=EEXIST是代表文件存在。
对改文件进行写在读操作。
在此进程中对,1进程进行打开和写入操作,这是两进程可进行相互通信,1进程可接到这个进程发的消息。