Linux学习笔记(五)Linux进程间通信

五种方式:
① 管道 pipe
② 消息队列 message queue
③ 共享内存 shared memory
④ 网络套接字 socket
⑤信号量
注:后三种windows也有

管道: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)

(1) open是阻塞的
一个发送方,一个接收方,都齐备时才返回
(2) read是阻塞的
(3) 管道是单向的
这意味着两个进程之间可能要建立两个管道
(4) 和普通文件的区别,操作系统操作的,普通文件实现不了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值