第一份《Java并发实现原理》

基于JDK 7和1JDK 8,对整个Concurrent包进行全面的源码剖析。JDK 8中大部分并发功能的实现和JDK7一样,但新增了一些额外特性。例如CompletableFuture、ConcurrentHashMap的新实现、StampedLock、LongAdder等。

对整个Concurrent包的源码进行分析,有以下几个目的:

(1) 帮助使用者合理地选择解决方案。Concurrent包很庞大,有各式各样的线程互斥与同步机制。明白实现原理,使用者可以根据自己的业务场景,选择最适合自己的解决方案。避免重复造轮子,也避免因为使用不当而掉到“坑”里。

(2)对源码的分析,将让使用者对内存屏障、CAS原子操作、锁、无锁等底层原理的认识,不再停留于一个“似是而非”的阶段,而是深刻地认识其本质。

(3)吸收借鉴大师的思维。在 Concurrent包中,可以看到各种巧妙的并发处理策略。看了Concurrent包,才会发现在多线程中,不是只有简陋的互斥锁、通知机制和线程池。

从多线程基础知识讲起,逐步地深入整个Concurrent包。读完,你将对多线程的原理、各种并发的设计原理有一个全面而深刻的理解。

文中笔记:一键三连(点赞+收藏+关注) 后,添加微信:mxm9843 即可免费获取到

第二份《精通Java并发编程(第2版)》

Java提供了一套非常强大的并发API,可以轻松实现任何类型的并发应用程序。

讲述Java并发API最重要的元素,包括执行器框架、Phaser类、Fork/Join框架、流API、并发数据结构、同步机制,并展示如何在实际开发中使用它们。此外,还介绍了设计并发应用程序的方法论、设计模式、实现良好并发应用程序的提示和技巧、测试并发应用程序的工具和方法,以及如何使用面向Java虚拟机的其他编程语言实现并发应用程序。

第三份《Java并发编程实践》

既能够成为读者的理论支持,又可以作为构建可靠的、可伸缩的、可维护的并发程序的技术支持。并不仅仅提供并发API的清单及其机制,还提供了设计原则、模式和思想模型,使我们能够更好地构建正确的、性能良好的并发程序。