生产者消费者模型
2013-12-05 20:59 轩脉刃 阅读(843) 评论(2) 编辑 收藏 举报生产者消费者问题 最基本的是生产者生产出数据,消费者来获取数据,但是生产者消费者模型必须保证的是:
1 同一时间只会有一个生产者或者一个消费者会进行生产/消费
2 生产者或者消费者会操作一个缓冲区,这个缓冲区有大小
3 如果缓冲区数据达到大小上限,生产者没办法往缓冲区生产数据
4 如果缓冲区数据达到大小下限(即缓冲区内没有数据),消费者没有办法从缓冲区中消费数据
基于上面这几个条件,一个系统就满足生产者消费者模型了。
注释
生产者消费者模式一定是对并发来说的。多个线程或者多个进程对一个数据来进行操作才会需要用到生产者消费者模型,如果单线程的话,是不会有这个模型的。
并发一定就会涉及到锁的机制了,同一时间只有一个生产者或者一个消费者进行生产/消费,这条必须会使用到锁
实时了解作者更多技术文章,技术心得,请关注微信公众号“轩脉刃的刀光剑影”
本文基于署名-非商业性使用 3.0许可协议发布,欢迎转载,演绎,但是必须保留本文的署名叶剑峰(包含链接http://www.cnblogs.com/yjf512/),且不得用于商业目的。如您有任何疑问或者授权方面的协商,请与我联系。