Java库本身就有多种线程安全的容器和同步工具,其中同步容器包括两部分:一个是Vector和Hashtable。另外还有JDK1.2中加入的同步包装类,这些类都是由Collections.synchronizedXXX工厂方法。同步容器都是线程安全的,但是对于复合操作,缺有些缺点:
① 迭代:在查觉到容器在迭代开始以后被修改,会抛出一个未检查异常ConcurrentModificationExc...
分类:
编程语言 时间:
2015-08-19 16:46:47
阅读次数:
190
BlockingQueue也是java.util.concurrent下的主要用来控制线程同步的工具。 BlockingQueue有四个具体的实现类,根据不同需求,选择不同的实现类 1、ArrayBlockingQueue:一个由数组支持的有界阻塞队列,规定大小的B...
分类:
编程语言 时间:
2015-08-11 12:30:46
阅读次数:
152
BlockingQueue、BoundedBlockingQueue是关于有界缓冲和无界缓冲的,是典型的生产者消费者模型的代表。...
分类:
数据库 时间:
2015-07-29 17:24:26
阅读次数:
248
工作中多处接触到了ThreadPoolExecutor。趁着现在还算空,学习总结一下。 ? 前记: ? jdk官方文档(javadoc)是学习的最好,最权威的参考。 文章分上中下。上篇中主要介绍ThreadPoolExecutor接受任务相关的两方...
分类:
编程语言 时间:
2015-07-28 11:05:44
阅读次数:
145
我们这篇文章延续了上一篇文章中关于ThreadPoolExecutor线程池的一些内容,分别是newCachedThreadPool、newFixedThreadPool、newSingleThreadExecutor,同时根据这些线程池与ThreadPoolExecutor的关系,进而引出了阻塞队列BlockingQueue,接下来我们详细介绍了接口BlockingQueue和接口中的方法,最后又介绍了接口BlockingQueue的实现类。...
分类:
编程语言 时间:
2015-07-28 09:08:34
阅读次数:
169
ThreadPoolExecutor提供了四种构造方法: ThreadPoolExecutor(int?corePoolSize,?int?maximumPoolSize,?long?keepAliveTime,?TimeUnit?unit,?BlockingQueue<Runnable>?workQueue)
Creates?a?new?Thr...
分类:
编程语言 时间:
2015-07-19 22:00:33
阅读次数:
162
每次都是隔很长时间才在博客中写点什么,说自己忙吧,这是给自己的一个借口,其实呢还是懒啊。哎。。。最近项目中有个对比的需求,需要从日志文件中获取到参数,然后调用不同的API,进行结果的对比。但是不知用什么方式比较好,于是查了下jdk的手册,发现了BlockingQueue这个好东西。关于Blockin...
分类:
编程语言 时间:
2015-07-13 20:38:27
阅读次数:
117
【ThreadPoolExecutor的使用和思考】publicThreadPoolExecutor(intcorePoolSize,intmaximumPoolSize,longkeepAliveTime,TimeUnit unit,BlockingQueue workQueue,ThreadFa...
分类:
编程语言 时间:
2015-07-04 00:50:31
阅读次数:
150
转载自http://janeky.iteye.com/blog/770671---------------------------------------------------------------------------------7.BlockingQueue “支持两个附加操作的 Queu...
分类:
编程语言 时间:
2015-07-02 00:54:16
阅读次数:
196
核心类:ZorkaAsyncThread.javaprotected BlockingQueue submitQueue; /*** Processes single item from submit queue (if any).*/public void runCycle() {try {T o...
分类:
其他好文 时间:
2015-06-23 11:50:03
阅读次数:
184