在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就是队列(先进先出)。Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队列,其中阻塞队列的典型例子是BlockingQueue,非阻塞队列的典型例子是ConcurrentLinkedQueue,在实际应用中要根据实际需 ...
分类:
数据库 时间:
2016-07-21 14:53:48
阅读次数:
236
目录: 1.volatile变量 2.Java并发编程学习 3.CountDownLatch用法 4.CyclicBarrier使用 5.BlockingQueue使用 6.任务执行器Executor7.CompletionService使用8.ConcurrentHashMap使用9.Lock使用 ...
分类:
编程语言 时间:
2016-07-19 18:46:41
阅读次数:
219
LinkedBlockingDeque基于双向链表实现的阻塞队列,根据构造传入的容量大小决定有界还是无界,默认不传的话,大小Integer.Max。
实现BlockingDequeue接口,这个接口继承BlockingQueue和Dequeue,看下接口方法:
public interface BlockingDeque extends BlockingQueue, Deque {
/** ...
分类:
数据库 时间:
2016-07-13 17:11:03
阅读次数:
252
上一篇学习了ExecutorService和其它相关类的源码,本篇要学习的BlockingQueue中的源码,as always,先上类图 其实继承(实现)的层次比较简单,我们只要需要先学习一下BlockingQueue中的方法: 其实除了poll和offer 其它方法一般我们是用不到的,所以还是很 ...
分类:
其他好文 时间:
2016-07-04 15:32:36
阅读次数:
120
从Java5开始,Java提供了自己的线程池。每次只执行指定数量的线程,java.util.concurrent.ThreadPoolExecutor 就是这样的线程池。以下是我的学习过程。
首先是构造函数签名如下:
[java] view
plain copy
print?
public ThreadPoolExecutor(in...
分类:
编程语言 时间:
2016-07-03 17:33:30
阅读次数:
292
一、ThreadPoolExecutor介绍 在jdk1.8中,构造函数有4个。以 ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue<R ...
分类:
编程语言 时间:
2016-07-01 11:52:31
阅读次数:
213
本文主要讲了Java中BlockingQueue的源码一、BlockingQueue介绍与常用方法BlockingQueue是一个阻塞队列。在高并发场景是用得非常多的,在线程池中。如果运行线程数目大于核心线程数目时,也会尝试把新加入的线程放到一个BlockingQueue中去...
分类:
数据库 时间:
2016-06-21 10:57:42
阅读次数:
448
前言 在多线程环境下,JDK给开发者提供了许多的组件供用户使用(主要在java.util.concurrent下),使得用户不需要再去关心在具体 场景下要如何写出同时兼顾线程安全性与高效率的代码。之前讲过的线程池、BlockingQueue都是在java.util.concurrent下的 组件,T ...
分类:
编程语言 时间:
2016-06-15 19:12:16
阅读次数:
255
Queue是什么 队列,是一种数据结构。除了优先级队列和LIFO队列外,队列都是以FIFO(先进先出)的方式对各个元素进行排序的。无论使用哪种排序方式,队列的头都是调用remove()或poll()移除元素的。在FIFO队列中,所有新元素都插入队列的末尾。 Queue中的方法 Queue中的方法不难 ...
分类:
编程语言 时间:
2016-06-15 19:05:26
阅读次数:
275
ExecutorService与ExecutorCompletionService都是java.util.concurrent包的并发处理类,总的来说,ExecutorCompletionService是ExecutorService的功能增强版,ExecutorCompletionService以BlockingQueue<Future<V>>来存放已经完成的任务。也就是说,优先完成的任务..
分类:
编程语言 时间:
2016-06-14 19:48:58
阅读次数:
372