进程间通信之管道
文章目录 1进程间通信:管道 1进程间通信:管道 进程间通信 IPC: inter‐process communicating 两个进程之间互相交换数据,称为进程间通 信。 进程A 进程B 进程间通信 四种方式: ① 管道pipe ② 消息队列message queue ③ 共享内存shared memory ④ 网络套接字socket 管道 管道:pipe,是Linux操作系统提供的一个消息传递机制。 ① 系统中创建一个文件,其文件类型为管道 mkfifo ~/project/message ② 进程A: 打开open该文件,向文件写入write数据 ③ 进程B: 打开open该文件,从文件读取read数据 于是,数据 从进程A传递到进程B。。。显然,管道文件 并不是普通的文件。 管理文件不是普通的文件。。。 ls ‐l message prw‐rw‐r‐‐1 mytest mytest 0 8月 19 02:48 message (首字母为p,表示其类型为pipe) 演示 write.cpp : 向pipe中写入数据 read.cpp: 从pipe中读取数据 (1) open是阻塞的 一个发送方,一个接收方,都齐备时才返回 (2) read是阻塞的 (3) 管道是单向的 这意味着两个进程之间可能要建立两个管道 (4) 和普通文件 区别?? 小结: 1,管道意义 2