linux进程间通信--命名管道
我们可以使用mkfifo(FIFO_FILE, 0666 | S_IFIFO)函数创建一个命名管道来实现进程间的通信。
在对管道进行读写之前需要open打开它,在打开的时候需指定打开的模式:1.O_RDONLY;2.O_WRONLY;3.O_RDWR
当我们单独使用O_RDONLY或者O_WRONLY方式打开管道时,默认是被阻塞的,除非另一个进程用相对应的方式打开同一管道,这时才能读写管道进行通信。
注意:此时当管道使用的两端进程有一方退出的时候,管道就被阻塞,此时若再读写操作就会出现类似Broken pipe的提示。