![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA并发编程
文章平均质量分 80
Melody4Java
这个作者很懒,什么都没留下…
展开
-
java线程池与五种常用线程池策略使用与解析
java线程池与四种常用线程池策略使用与解析一.线程池关于为什么要使用线程池久不赘述了,首先看一下java中作为线程池Executor底层实现类的ThredPoolExecutor的构造函数public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize,原创 2016-07-09 18:23:46 · 36004 阅读 · 6 评论 -
Lock、ReentrantLock、ReentrantReadWriteLock原理及应用深入解析
Lock相比于synchronized具有更强大的功能,本文详细介绍lock、ReentrantLock和ReentrantReadWriteLock的原理与实用场景原创 2016-07-24 11:34:39 · 6055 阅读 · 0 评论 -
Condition实现原理
Condition可以阻塞或唤醒线程,配合lock使用达到类似于wait()和notify()的效果。本文主要根据jdk源码讲解condition的实现原理。 Condition是一个接口,首先看看接口中定义的方法列表public interface Condition { void await() throws InterruptedException;//类似于wait(),可以响应中断原创 2016-07-27 00:23:58 · 1116 阅读 · 1 评论 -
java实现BlockingQueue接口的队列解析
java实现BlockingQueue接口的队列解析阻塞队列与非阻塞队列一个最大的区别就是:阻塞队列能够阻塞当前试图从队列中获取元素的线程,而非阻塞队列不会。因此在面对类似消费者-生产者的模型时,使用非阻塞队列就必须额外地实现同步策略以及线程间唤醒策略,这个实现起来就非常麻烦。但是有了阻塞队列就不一样了,它会对当前线程产生阻塞,比如一个线程从一个空的阻塞队列中取元素,此时线程会被阻塞直到阻塞队列中有原创 2016-07-14 00:14:01 · 4911 阅读 · 0 评论