Java多线程编程核心技术(第2版)
高洪岩
前言
本书是国内首本整本系统、完整地介绍Java多线程技术的书籍,作为笔者,我要感谢大家的支持与厚爱。
本书第1版在出版后获得了广大Java程序员与学习者的关注,技术论坛、博客、公众号等平台大量涌现出针对Java多线程技术的讨论与分享。能为国内IT知识的建设贡献微薄之力是让我最欣慰的。
有些读者在第一时间就根据书中的知识总结了学习笔记,并在博客中进行分享,笔者非常赞赏这种传播知识的精神。知识就要分享,知识就要传播,这样才能共同进步。
第2版与第1版的区别
本书第1版上市后收到了大量的读者反馈,我对每一个建议都细心地进行整理,力求在第2版中得以完善。
第2版在第1版的基础上着重加强了8点更新:
1)大量知识点重排,更有利于阅读与理解;
2)更新了读者提出的共性问题并进行集中讲解;
3)丰富Thread.java类API的案例,使其更具有实用性;
4)对线程的信息进行监控实时采样;
5)强化了volatile语义、多线程核心synchronized的案例;
6)力求知识点连贯,方便深度学习与理解,增加原子与线程安全的内容;
7)深入浅出地介绍代码重排特性;
8)细化工具类ThrealLocal和InheritableThreadLocal的源代码分析与原理。
由于篇幅有限,有关线程池的知识请参考笔者的另一本书—《Java并发编程:核心方法与框架》,那本书中有针对Java并发编程技术的讲解。在向分布式领域进军时还需要用到NIO和Socket技术,故推荐笔者的拙作《NIO与Socket编程技术指南》,希望可以给读者带来一些帮助。
本书秉承大道至简的主导思想,只介绍Java多线程开发中最值得关注的内容,希望抛砖引玉,以个人的一些想法和见解,为读者拓展出更深入、更全面的思路。
本书特色
在撰写本书的过程中,我尽量少用“啰唆”的文字,全部以Demo式案例来讲解技术点的实现,使读者看到代…