原文:【JUC】JDK1.8源码分析之ThreadPoolExecutor(一)

一 前言 JUC这部分还有线程池这一块没有分析,需要抓紧时间分析,下面开始ThreadPoolExecutor,其是线程池的基础,分析完了这个类会简化之后的分析,线程池可以解决两个不同问题:由于减少了每个任务调用的开销,它们通常可以在执行大量异步任务时提供增强的性能,并且还可以提供绑定和管理资源 包括执行任务集时使用的线程 的方法。下面开始分析。 二 ThreadPoolExecutor数据结构 ...

2016-06-17 14:33 8 7176 推荐指数:

查看详情

JUCJDK1.8源码分析之ReentrantReadWriteLock

重入锁ReentrantLock是排他锁,排他锁在同一时刻仅有一个线程可以进行访问,但是在大多数场景下,大部分时间都是提供读服务,而写服务占有的时间较少。然而读服务不存在数据竞争问题,如果一个线 ...

Wed Sep 12 23:59:00 CST 2018 0 1155
JUCJDK1.8源码分析之ArrayBlockingQueue(三)

一、前言   在完成Map下的并发集合后,现在来分析ArrayBlockingQueue,ArrayBlockingQueue可以用作一个阻塞型队列,支持多任务并发操作,有了之前看源码的积累,再看ArrayBlockingQueue源码会很容易,下面开始正文 ...

Fri May 27 23:45:00 CST 2016 0 1715
JUCJDK1.8源码分析之LockSupport(一)

一、前言   最开始打算分析ReentrantLock,但是分析到最后,发现离不开LockSuport的支持,所以,索性就先开始分析LockSupport,因为它是锁中的基础,是一个提供锁机制的工具类,所以先对其进行分析。 二、LockSupport源码分析   2.1 类的属性 ...

Sun Apr 03 01:03:00 CST 2016 8 3437
JUCJDK1.8源码分析之CyclicBarrier(四)

一、前言   有了前面分析的基础,现在,接着分析CyclicBarrier源码,CyclicBarrier类在进行多线程编程时使用很多,比如,你希望创建一组任务,它们并行执行工作,然后在进行下一个步骤之前等待,直至所有的任务都完成,和join很类似,下面,开始分析源码 ...

Tue Apr 19 03:13:00 CST 2016 3 3368
JUCJDK1.8源码分析之LinkedBlockingQueue(四)

一、前言   分析完了ArrayBlockingQueue后,接着分析LinkedBlockingQueue,与ArrayBlockingQueue不相同,LinkedBlockingQueue底层采用的是链表结构,其源码也相对比较简单,下面进行正式的分析 ...

Sun May 29 19:07:00 CST 2016 1 2292
JUCJDK1.8源码分析之CopyOnWriteArrayList(六)

一、前言   由于Deque与Queue有很大的相似性,Deque为双端队列,队列头部和尾部都可以进行入队列和出队列的操作,所以不再介绍Deque,感兴趣的读者可以自行阅读源码,相信偶了Queue源码分析经验,Deque的分析也会水到渠成,下面介绍List在JUC下 ...

Wed Jun 01 18:44:00 CST 2016 2 1807
JUCJDK1.8源码分析之ConcurrentHashMap(一)

一、前言   最近几天忙着做点别的东西,今天终于有时间分析源码了,看源码感觉很爽,并且发现ConcurrentHashMap在JDK1.8版本与之前的版本在并发控制上存在很大的差别,很有必要进行认真的分析,下面进行源码分析。 二、ConcurrentHashMap数据结构   之前已经提及 ...

Wed May 04 06:06:00 CST 2016 4 8216
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM