package j2se.thread.demo;/** * Project:J2SE 的基础知识 * Tile:多线程模拟 生产者 和 消费者 * Description: * * * * * @date 2014-06-10 * @author liw...
分类:
编程语言 时间:
2014-10-01 21:11:41
阅读次数:
206
前段时间没事研究了一些生产者和消费者之间的问题,期间也查看了不少资料。又重新有了新的认识。特别作为一个IT农民工,必须要掌握的技能啊。个人理解,这个应该说是一种模型吧,学会它,可以应用到多个方面的技术上去。数据流文件的读写,程序中的数据缓冲技术,播放缓冲技术等等。废话不多说。。。直接上代码。下面是个...
分类:
编程语言 时间:
2014-09-11 02:18:51
阅读次数:
329
本文使用java语言借助java并发库去实现生产者和消费者问题。主要设计思路:1.物料池是共享容器;2.生产者只负责生产物料,添加到物料池中;3.消费者从池中获取物料。在这里使用ReenTranLock控制共享容...
分类:
其他好文 时间:
2014-09-09 18:38:39
阅读次数:
123
这是个线程同步的经典例子,源代码如下:[java] view plaincopypackagedemo.thread;/***经典生产者与消费者问题:生产者不断的往仓库中存放产品,消费者从仓库中消费产品。*其中生产者和消费者都可以有若干个。仓库容量有限,库满时不能存放,库空时不能取产品*/publi...
分类:
编程语言 时间:
2014-09-09 17:54:09
阅读次数:
204
Producer生产者顾名思义就是生产数据的线程,Consumer消费者就是使用数据的线程。可以有多个生产者,也可以有多个消费者,当生产者和消费者都是一个的时候,又叫做管道Pipe Pattern。下面简单写了个例子,一个线程加1,一个线程减1,一个生产者、一个消费者,生产者用来加1,消费者用来减1...
分类:
编程语言 时间:
2014-09-05 16:03:01
阅读次数:
233
Java并发编程实践 目录并发编程—— ConcurrentHashMap并发编程—— 阻塞队列和生产者-消费者模式概述第1部分 为什么要使用生产者和消费者模式第2部分什么是生产者消费者模式第3部分 代码示例第1部分 为什么要使用生产者和消费者模式 在线程世界里,生产者就是生产数据的线程,消费者就....
分类:
其他好文 时间:
2014-09-04 16:36:59
阅读次数:
376
如题所述:生产者消费者问题这是一个非常经典的多线程题目,题目大意如下:有一个生产者在生产产品,这些产品将提供给若 干个消费者去消费,为了使生产者和消费者能并发执行,在两者之间设置一个有多个缓冲区的缓冲池,生产者将它生产的产品放入一个缓冲区中,消费者可以从缓冲 区中取走产品进行消费,所有生产者和消费者...
分类:
编程语言 时间:
2014-09-03 12:53:56
阅读次数:
343
Exchanger可以看做双向数据传输的SynchronousQueue,即没有生产者和消费者之分,任意两个线程都可以交换数据。在JDK5中Exchanger被设计成一个容量为1的容器,存放一个等待线程,直到有另外线程到来就会发生数据交换,然后清空容器,等到下一个到来的线程。从JDK6开始,Exch...
分类:
编程语言 时间:
2014-08-27 23:20:38
阅读次数:
270
思路 生产者和消费者(互斥与同步)。资源用队列模拟(要上锁,一个时间只能有一个线程操作队列)。 m个生产者。拿到锁,且产品不满,才能生产。当产品满,则等待,等待消费者唤醒。当产品由空到不空,通知消费者。n个消费者。拿到锁,且有产品,才能消费。当产品空,则等待,等待生产者唤醒。当产品由满到不满,通知生...
分类:
编程语言 时间:
2014-08-27 01:31:26
阅读次数:
380
Java自定义一个线程安全的有界阻塞缓存队列,实现生产者消费者问题。
分类:
编程语言 时间:
2014-08-26 13:32:06
阅读次数:
162