码迷,mamicode.com
首页 > 其他好文 > 详细

设计模式_生产者消费者

时间:2018-12-12 00:27:17      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:要求   消息   框架   not   生产者消费者   lock   部分   sign   就是   

生产者与消费者
处在中游的既是上游生产者的消费者,又是下游消费者的生产者;因为生产者与消费者之间存在对公共资源的读写,所以要求实现锁机制以保证线程安全;
这是一种基于流水线形式的设计模式,而流水线就是内存缓冲区,内存缓冲区为空的时候消费者必须等待,而内存缓冲区满的时候,生产者必须等待,通过内存缓冲区进行通信;
消费者在获取数据时候有可能一次不能处理完,那么它们各自有一个请求队列在内存缓冲区,做这项工作的框架叫做消息队列。
对比并行计算要求证明分割的两部分在因果上没有关联,则可以进行并行计算。

(1)Object的wait() / notify()方法  synchronized{}

(2)Lock和Condition的await() / signal()方法

(3)BlockingQueue阻塞队列方法

  java.util.concurrent.ArrayBlockingQueue

  java.util.concurrent.LinkedBlockingQueue

  java.util.concurrent.SynchronousQueue

  java.util.concurrent.PriorityBlockingQueue

(4)PipedInputStream / PipedOutputStream

设计模式_生产者消费者

标签:要求   消息   框架   not   生产者消费者   lock   部分   sign   就是   

原文地址:https://www.cnblogs.com/mrerror/p/10105578.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!