前言
对于一个 Java 程序员而言,能否熟练掌握并发编程是判断他优秀与否的重要标准之一。因为并发编程是 Java 语言中最为晦涩的知识点,它涉及操作系统、内存、CPU、编程语言等多方面的基础能力,更为考验一个程序员的内功。
那到底应该怎么学习并发编程呢?Java SDK 的并发工具包有很多,是要死记硬背每一个工具的优缺点和使用场景吗?当然不是,想要学好并发编程,你需要从一个个单一的知识和技术中“跳出来”,高屋建瓴地看问题,并逐步建立自己的知识体系。
分享
LZ 今天给各位读者分享一份 Java 高并发编程干货书籍《Java 高并发编程详解:多线程与架构设计》的电子版。本书深入讲述了 Java 高并发编程的相关内容,覆盖面广而全,可以将其看作 Java 高并发编程的一本百科全书。还有清华大牛马士兵的并发编程教程视频分享哟
适读人群:适合有 Java 开发经验,以成为 Java 高手、架构师为目标的读者阅读本书
内容
第一部分主要阐述 Thread 的基础知识,详细介绍线程的 API 使用、线程安全、线程间数据通信以及如何保护共享资源等内容,它是深入学习多线程内容的基础。
在第二部分中之所以引入 ClassLoader,是因为 ClassLoader 与线程不无关系,我们可以通过 synchronized 关键字,或者 Lock 等显式锁的方式在代码的编写阶段对共享资源进行数据一致性保护,那么一个 Class 在完成初始化的整个过程到最后在方法区( JDK8 以后在元数据空间)其数据结构是怎样确保数据一致性的呢?这就需要对 ClassLoader 有一个比较全面的认识和了解。
第三部分,作者用了三章的篇幅来详细、深入地介绍 volatile 关键字的语义,volatile 关键字在 Java 中非常重要,可以说它奠定了 Java 核心并发包的高效运行,在这一部分中,我们通过实例展示了如何使用 volatile 关键字并非常详细地介绍了 Java 内存模型等知识。
第四部分,站在程序架构设计的角度讲解如何设计高效灵活的多线程应用程序,第四部分应该是内容最多的一部分,总共包含了 15 章。
目录
第一部分——多线程基础
第 1 章:快速认识线程
第 2 章:深入理解 Thread 构造函数
第 3 章:Thread API 的详细介绍
第 4 章:线程安全与数据同步
第 5 章:线程间通信
第 6 章:ThreadGroup 详细讲解
第 7 章:Hook 线程以及捕获线程执行异常
第 8 章:线程池原理以及自定义线程池
第二部分——Java ClassLoader
第 9 章:类的加载过程
第 10 章:JVM 类加载器
第 11 章:线程上下文类加载器
第三部分——深入理解 volatile 关键字
第 12 章:volatile 关键字的介绍
第 13 章:深入 volatile 关键字
第 14 章:7 种单例设计模式的设计
第四部分——多线程设计架构模式
第 15 章:监控任务的生命周期
第 16 章:Single Thread Execution 设计模式
第 17 章:读写锁分离设计模式
第 18 章:不可变对象设计模式
第 19 章:Future 设计模式
第 20 章:Guarded Suspensi on 设计模式
第 21 章:线程上下文设计模式
第 22 章:Balking 设计模式
第 23 章:Latch 设计模式
第 24 章:Thread- Per-Message 设计模式
第 25 章:Two Fhase Termination 设计模式
第 26 章:Worker- Thread 设计模式
第 27 章:Active 0bjects 设计模式
第 28 章:Event Bus 设计模式
第 29 章:Event Driven 设计模式
点击此处 即可