当前位置: 技术问答>linux和unix
生产者与消费者
来源: 互联网 发布时间:2016-11-10
本文导语: 生产者消费者问题如下: 有一个有限缓冲区和两个线程:生产者和消费者。 分别生产产品到缓冲区和从缓冲区拿走产品 在缓冲区满时生产者必须等待, 缓冲区空时生产者必须等待。 要求用有名管道来模拟有限缓冲...
生产者消费者问题如下:
有一个有限缓冲区和两个线程:生产者和消费者。
分别生产产品到缓冲区和从缓冲区拿走产品
在缓冲区满时生产者必须等待,
缓冲区空时生产者必须等待。
要求用有名管道来模拟有限缓冲区,用信号量来解决同步和互斥问题。
虽然知道生产者消费者问题怎么解决,但用有名管道
来模拟缓冲区就不知道应该咋写了。。
有一个有限缓冲区和两个线程:生产者和消费者。
分别生产产品到缓冲区和从缓冲区拿走产品
在缓冲区满时生产者必须等待,
缓冲区空时生产者必须等待。
要求用有名管道来模拟有限缓冲区,用信号量来解决同步和互斥问题。
虽然知道生产者消费者问题怎么解决,但用有名管道
来模拟缓冲区就不知道应该咋写了。。
|
有名管道就是用来缓冲数据的,读出/写入就行了
|
linux的管道就已经实现了读写的pv操作了
|
open() // 打开有名管道
read() // 读
write() // 写
close() // 关闭
read() // 读
write() // 写
close() // 关闭
|
临界资源 上锁 读写 解锁。