# 《深入理解高并发编程:JDK核心技术》-冰河新书上市

大家好,我是冰河~~

废话说多了没用,并发编程技术一直是初级程序员进阶高级工程师的前提条件,也是成为大厂程序员的必备技能,更是突破自身技术瓶颈的必经之路。

2022年6月我出版了“冰河技术丛书”之“深入理解高并发编程”系列的第1部作品——《深入理解高并发编程:核心原理与案例实战 (opens new window)》,书中全面细致地介绍了高并发编程的基础知识、核心原理、实战案例和系统架构等内容,帮助读者从根本上理解并发编程出现各种诡异Bug问题的根源,并从原理与实战层面找到解决问题的方案。随后这本书被翻译成繁体版——《深入高平行開發:深度原理&專案實戰 (opens new window)》进行发售。

今天,再次给大家隆重的宣布一个好消息:继出版《海量数据处理与大数据技术实战 (opens new window)》、《MySQL技术大全:开发、优化与运维实战 (opens new window)》和《深入理解分布式事务:原理与实战 (opens new window)》、《深入理解高并发编程:核心原理与案例实战 (opens new window)》和《深入高平行開發:深度原理&專案實戰 (opens new window)》后,经过一年多的认真打磨,冰河的第6本图书——《深入理解高并发编程:JDK核心技术》正式上市了。

# 写作背景

2022年6月出版《深入理解高并发编程:核心原理与案例实战 (opens new window)》一书后,思来想去,隐约觉得书中虽然全面细致地介绍了高并发编程的基础知识、核心原理、实战案例和系统架构等内容,能够帮助读者从根本上理解并发编程出现各种诡异Bug问题的根源,也能够从原理与实战层面找到解决问题的方案。但是,貌似还缺少对于《深入理解高并发编程:核心原理与案例实战 (opens new window)》一书中提到的一些核心原理的深度落地实践剖析。

那么问题来了:《深入理解高并发编程:核心原理与案例实战 (opens new window)》一书中,在核心原理篇详细介绍了并发编程的各种核心原理,那如何对这些核心原理的实践进行剖析呢?再一个就是这些并发编程实践最好是大家都能够非常容易接触到的,这样,各位小伙伴就能够一边看书,一边实践了。

经过一段时间的调研,我把目光聚焦到了JDK上,相信只要大家学习Java,就肯定会接触JDK,而JDK中有很多并发编程工具类,各种并发编程类库,比如:并发容器类、并发阻塞队列、并发非阻塞队列、并发工具类、锁工具类、无锁原子类、线程工具类和线程池等等,都是JDK中对于并发编程核心原理的深度实践。并且JDK中这些并发编程的类库经历了实际生产环境中高并发、大流量的考验,是学习高并发编程非常好的实践案例,并且这些案例是任何一个学习Java的小伙伴非常容易获得的宝贵资源。

所以,思来想去,最终将这本书聚焦到JDK上,并且为新书起了一个新的名字——《深入理解高并发编程:JDK核心技术》,从名字上看,也能够看出,这是一本聚焦JDK并发编程核心技术的图书,并且是“冰河技术丛书”之“深入理解高并发编程”系列的第2部作品,确定好书名和方向后,接下来,就是努力的去写作了。

# 本书全貌

本书从实际需求出发,将全书分为三个大的篇章,分别是:JDK高并发编程的基础知识、核心工具和线程池核心技术。

第一篇 基础篇(第1~2章)

本篇简单地介绍了进程与线程的基本概念、线程调度与上下文切换、进程与线程的综合对比、如何查看进程与线程的运行时信息,以及线程和线程组的基本操作。

第二篇 核心工具篇(第3~13章)

本篇通过大量源码和案例详细介绍了JDK的各种并发工具,涵盖同步集合、并发List集合类、并发Set集合类、并发Map集合类、并发阻塞队列、并发非阻塞队列、并发工具类、锁工具类、无锁原子类、线程工具类和异步编程工具类。几乎每个章节都配有JDK核心工具类的源码及实战案例,有助于读者理解。

第三篇 线程池核心技术篇(第14~16章)

本篇深入剖析了JDK中线程池的核心源码。包括线程池顶层接口和抽象类、线程池正确运行的核心流程、线程池执行任务的核心流程、Worker线程的核心流程、线程池优雅退出的核心流程、ScheduledThreadPoolExecutor类与Timer类的区别、定时任务线程池的初始化、调度流程和优雅关闭流程等。通过对本篇的学习,读者能够从源码级别深刻理解线程池的核心原理和执行流程。

为了进一步加深读者对线程池的理解,在本篇的随书源码中,会给出完整的手写线程池的案例程序。

# 学完收获

本书适合:联网行业从业人员、高校师生、中高级开发人员、架构师、技术经理及技术专家和对高并发编程感兴趣的人员学习阅读。另外,由于本书是专注介绍JDK高并发编程技术的图书,强烈建议Java方向的小伙伴人手一册

学完并掌握书籍中的内容后,从此,你的简历上不再仅仅是简单的罗列CRUD项目,还可以写上熟悉或精通JDK中提供的各种并发编程类库,并且还可以具备自己手写一个线程池的能力。这下,你就可以和其他人在并发编程方面拉开差距了。

另外,“冰河技术丛书”之“深入理解高并发编程”系列目前已出版两本图书,分别是《深入理解高并发编程:核心原理与案例实战》和《深入理解高并发编程:JDK核心技术》。后续根据实际情况,还会出版其他的并发书籍,如果想彻底深入理解高并发编程,可以持续关注“冰河技术丛书”之“深入理解高并发编程”系列图书。不仅仅是为你的简历和面试加分,更重要的是要让你彻底理解并发编程,为你的职业生涯保驾护航

# 下手新书

兄弟们盘它,购买后加入图书专有读者群,由冰河本人亲自答疑解惑,我想把经历的真正大规模高并发项目架构与研发经验全部传授给你,跟冰河一起彻底深入理解高并发编程。


感谢图书编辑:张晶、杨中兴

感谢大佬推荐(排名部分先后):蒋涛(CSDN创始人、总裁)、邹欣(CSDN副总裁)、李海翔(腾讯数据库资深研究员、首席架构师)、林子熠(阿里巴巴JVM技术专家、CCF系统软件专委会执行委员)、于君泽(资深技术专家、公众号“技术琐话”作者)、沈剑(互联网架构专家,公众号“架构师之路”作者)、秦金卫(长亮科技平台技术部副总经理、Apache Dubbo/ShardingSphere PMC)、张开涛(《亿级流量网站架构核心技术》作者)、季敏(Seata开源社区创始人)、李鹏云(杭州任你说智能科技CTO)、程军(前饿了么技术总监,公众号“军哥手记”作者)、骆俊武(京东零售架构师)、纯洁的微笑(公众号“纯洁的微笑”作者)、黄哲铿/Mr.K(“顿悟山丘”咨询创始人、公众号“技术领导力”作者)、李伟(Apache RocketMQ北京社区联合发起人 && Commiter)、翟永超(公众号“程序猿DD”维护者、《Spring Cloud微服务实战》作者)。

感谢各位读者、粉丝朋友:一直以来对冰河的支持。

好了,今天就到这儿吧,我是冰河,我们下期见~~

# 星球服务

加入星球,你将获得:

1.项目学习:微服务入门必备的SpringCloud Alibaba实战项目、手写RPC项目—所有大厂都需要的项目【含上百个经典面试题】、深度解析Spring6核心技术—只要学习Java就必须深度掌握的框架【含数十个经典思考题】、Seckill秒杀系统项目—进大厂必备高并发、高性能和高可用技能。

2.框架源码:手写RPC项目—所有大厂都需要的项目【含上百个经典面试题】、深度解析Spring6核心技术—只要学习Java就必须深度掌握的框架【含数十个经典思考题】。

3.硬核技术:深入理解高并发系列(全册)、深入理解JVM系列(全册)、深入浅出Java设计模式(全册)、MySQL核心知识(全册)。

4.技术小册:深入理解高并发编程(第1版)、深入理解高并发编程(第2版)、从零开始手写RPC框架、SpringCloud Alibaba实战、冰河的渗透实战笔记、MySQL核心知识手册、Spring IOC核心技术、Nginx核心技术、面经手册等。

5.技术与就业指导:提供相关就业辅导和未来发展指引,冰河从初级程序员不断沉淀,成长,突破,一路成长为互联网资深技术专家,相信我的经历和经验对你有所帮助。

冰河的知识星球是一个简单、干净、纯粹交流技术的星球,不吹水,目前加入享5折优惠,价值远超门票。加入星球的用户,记得添加冰河微信:hacker_binghe,冰河拉你进星球专属VIP交流群。

# 星球重磅福利

跟冰河一起从根本上提升自己的技术能力,架构思维和设计思路,以及突破自身职场瓶颈,冰河特推出重大优惠活动,扫码领券进行星球,直接立减149元,相当于5折, 这已经是星球最大优惠力度!


领券加入星球,跟冰河一起学习《SpringCloud Alibaba实战》、《手撸RPC专栏》和《Spring6核心技术》,更有已经上新的《大规模分布式Seckill秒杀系统》,从零开始介绍原理、设计架构、手撸代码。后续更有硬核中间件项目和业务项目,而这些都是你升职加薪必备的基础技能。

100多元就能学这么多硬核技术、中间件项目和大厂秒杀系统,如果是我,我会买他个终身会员!

# 其他方式加入星球

特别提醒: 苹果用户进圈或续费,请加微信 hacker_binghe 扫二维码,或者去公众号 冰河技术 回复 星球 扫二维码加入星球。

# 星球规划

后续冰河还会在星球更新大规模中间件项目和深度剖析核心技术的专栏,目前已经规划的专栏如下所示。

# 中间件项目

  • 《大规模分布式定时调度中间件项目实战(非Demo)》:全程手撸代码。
  • 《大规模分布式IM(即时通讯)项目实战(非Demo)》:全程手撸代码。
  • 《大规模分布式网关项目实战(非Demo)》:全程手撸代码。
  • 《手写Redis》:全程手撸代码。
  • 《手写JVM》全程手撸代码。

# 超硬核项目

  • 《从零落地秒杀系统项目》:全程手撸代码,在阿里云实现压测(已上新)。
  • 《大规模电商系统商品详情页项目》:全程手撸代码,在阿里云实现压测。
  • 其他待规划的实战项目,小伙伴们也可以提一些自己想学的,想一起手撸的实战项目。。。

既然星球规划了这么多内容,那么肯定就会有小伙伴们提出疑问:这么多内容,能更新完吗?我的回答就是:一个个攻破呗,咱这星球干就干真实中间件项目,剖析硬核技术和项目,不做Demo。初衷就是能够让小伙伴们学到真正的核心技术,不再只是简单的做CRUD开发。所以,每个专栏都会是硬核内容,像《SpringCloud Alibaba实战》、《手撸RPC专栏》和《Spring6核心技术》就是很好的示例。后续的专栏只会比这些更加硬核,杜绝Demo开发。

小伙伴们跟着冰河认真学习,多动手,多思考,多分析,多总结,有问题及时在星球提问,相信在技术层面,都会有所提高。将学到的知识和技术及时运用到实际的工作当中,学以致用。星球中不少小伙伴都成为了公司的核心技术骨干,实现了升职加薪的目标。

# 联系冰河

# 加群交流

本群的宗旨是给大家提供一个良好的技术学习交流平台,所以杜绝一切广告!由于微信群人满 100 之后无法加入,请扫描下方二维码先添加作者 “冰河” 微信(hacker_binghe),备注:星球编号

冰河微信

# 公众号

分享各种编程语言、开发技术、分布式与微服务架构、分布式数据库、分布式事务、云原生、大数据与云计算技术和渗透技术。另外,还会分享各种面试题和面试技巧。内容在 冰河技术 微信公众号首发,强烈建议大家关注。

公众号:冰河技术

# 视频号

定期分享各种编程语言、开发技术、分布式与微服务架构、分布式数据库、分布式事务、云原生、大数据与云计算技术和渗透技术。另外,还会分享各种面试题和面试技巧。

视频号:冰河技术

# 星球

加入星球 冰河技术 (opens new window),可以获得本站点所有学习内容的指导与帮助。如果你遇到不能独立解决的问题,也可以添加冰河的微信:hacker_binghe, 我们一起沟通交流。另外,在星球中不只能学到实用的硬核技术,还能学习实战项目

关注 冰河技术 (opens new window)公众号,回复 星球 可以获取入场优惠券。

知识星球:冰河技术