Java高并发编程详解:多线程与架构设计
编辑推荐
适读人群 :1. 开发人员。他们可以非常系统地掌握Java多线程高并发的开发技巧和深入理解其中API的细节;2. 架构师。他们可以掌握架构设计的技巧,搭建高吞吐量高可用的Java应用程序。? 3.关于Java技术的程序员。
? 立足于线程源码剖析,从基础入手,逐层渐进深入,环环紧扣,针对技术细节进行了细致归纳,在解读源码的时候又引入了优秀的架构设计。
? 以业务场景下的真实问题作为导向,详细阐述每一个解决方案的来龙去脉,突出“身临其境”的阅读效果。
? 将大量的实际案例、原理剖析和实战代码相结合,让读者能够更加清晰深入地理解每一个技术细节的用法和实用技巧。
? 结合业界公认的好的设计架构技巧模式解决实际开发中遇到的问题,站在程序架构设计的角度指导读者设计高效灵活的多线程应用程序。
内容简介
本书主要包含四个部分:
部分主要阐述Thread的基础知识,详细介绍线程的API使用、线程安全、线程间数据通信,以及如何保护共享资源等内容,它是深入学习多线程内容的基础。
第二部分引入了ClassLoader,这是因为ClassLoader与线程不无关系,我们可以通过synchronized关键字,或者Lock等显式锁的方式在代码的编写阶段对共享资源进行数据一致性保护,那么一个Class在完成初始化的整个过程到后在方法区(JDK8 以后在元数据空间)其数据结构是怎样确保数据一致性的呢?这就需要对ClassLoader有一个比较全面的认识和了解。
第三部分详细、深入地介绍volatile关键字的语义,volatile关键字在Java中非常重要,可以说它奠定了Java核心并发包的高效运行,在这一部分中,我们通过实例展示了如何使用volatile关键字以及非常详细地介绍了Java内存模型等知识。
本书的第四部分,站在程序架构设计的角度深入讲解了如何设计高效灵活的多线程应用程序,这一部分长达15个章节,其重要程度可见一斑。
作者简介
汪文君 某数据服务中心技术经理、技术专家,目前专注于实时数据data pipeline平台的构建与架构,曾有7年多的移动通讯工作经验,以及移动互联网、云计算和B2C电子商务平台的开发架构经验,热衷于技术分享、技术细节锤炼。目前已录制10余套技术视频,在互联网上广泛传播。