Java并发指南16:JUC中常用的Unsafe和Locksupport

2019-08-11
阅读 6 分钟
1.5k
Fork/Join框架是Java7提供了的一个用于并行执行任务的框架, 是一个把大任务分割成若干个小任务,最终汇总每个小任务结果后得到大任务结果的框架。

Java并发指南14:Java并发容器ConcurrentSkipListMap与CopyOnWriteArrayList

2019-08-11
阅读 19 分钟
1.1k
原文出处[链接] 『chenssy』 到目前为止,我们在Java世界里看到了两种实现key-value的数据结构:Hash、TreeMap,这两种数据结构各自都有着优缺点。 Hash表:插入、查找最快,为O(1);如使用链表实现则可实现无锁;数据有序化需要显式的排序操作。 红黑树:插入、查找为O(logn),但常数项较小;无锁实现的复杂性很高,一...

Java并发指南13:Java7/8 中的 HashMap 和 ConcurrentHashMap 全解析

2019-08-11
阅读 17 分钟
1.2k
Java7/8 中的 HashMap 和 ConcurrentHashMap 全解析 转自[链接] 部分内容转自 [链接] 今天发一篇"水文",可能很多读者都会表示不理解,不过我想把它作为并发序列文章中不可缺少的一块来介绍。本来以为花不了多少时间的,不过最终还是投入了挺多时间来完成这篇文章的。 网上关于 HashMap 和 ConcurrentHashMap 的文章确实...

Java并发指南12:深度解读 java 线程池设计思想及源码实现

2019-08-11
阅读 49 分钟
1.1k
我相信大家都看过很多的关于线程池的文章,基本上也是面试必问的,好像我写这篇文章其实是没有什么意义的,不过,我相信你也和我一样,看了很多文章还是一知半解,甚至可能看了很多瞎说的文章。希望大家看过这篇文章以后,就可以完全掌握 Java 线程池了。

Java并发指南11:解读 Java 阻塞队列 BlockingQueue

2019-08-11
阅读 56 分钟
1.5k
最近得空,想写篇文章好好说说 java 线程池问题,我相信很多人都一知半解的,包括我自己在仔仔细细看源码之前,也有许多的不解,甚至有些地方我一直都没有理解到位。

Java并发指南9:AQS共享模式与并发工具类的实现

2019-08-11
阅读 43 分钟
1.1k
这篇文章是 AQS 系列的最后一篇,第一篇,我们通过 ReentrantLock 公平锁分析了 AQS 的核心,第二篇的重点是把 Condition 说明白,同时也说清楚了对于线程中断的使用。

Java并发指南8:AQS中的公平锁与非公平锁,Condtion

2019-08-11
阅读 24 分钟
1k
一行一行源码分析清楚 AbstractQueuedSynchronizer (二) 转自[链接] 文章比较长,信息量比较大,建议在 pc 上阅读。文章标题是为了呼应前文,其实可以单独成文的,主要是希望读者看文章能系统看。 本文关注以下几点内容: 深入理解 ReentrantLock 公平锁和非公平锁的区别 深入分析 AbstractQueuedSynchronizer 中的 Cond...

Java并发指南2:深入理解Java内存模型JMM

2019-08-11
阅读 11 分钟
1.3k
在并发编程中,我们需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体)。通信是指线程之间以何种机制来交换信息。在命令式编程中,线程之间的通信机制有两种:共享内存和消息传递。