一本书讲透Java线程:原理与实践

一本书讲透Java线程:原理与实践

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

全面解析Java线程的多种底层实现原理与应用技巧。

内容简介

本书由科大讯飞高级系统架构师撰写,结合大量源码与图示,通俗易懂;自顶向下解析JDK、JVM、Linux中的Java线程通信机制、同步机制、锁机制、原子计数器、线程安全容器、线程池的实现原理与应用技巧。

全书共12章,分为三篇。

基础篇(第1~5章),从Linux的线程基础讲起,重点从JDK、JVM、Linux多个维度讲解Java线程的设计、通信与同步机制,如内存一致性、内存屏障、多线程间数据通信、并发控制等核心知识,从而在实际开发中提高程序的性能和稳定性。

进阶篇(第6~9章),从CPU的架构讲起,重点讲解锁算法(MCS、CLH、AQS)、Java锁机制、原子计数器、线程并发容器、线程池的设计原理与实现,以期让读者掌握Java线程的进阶知识,不仅能开发出高性能的程序,而且遇到问题可以举一反三,找到最佳方案。

应用篇(第10~11章),详细讲解Java线程的常见模型与使用技巧。以电商真实场景为例,从面临的挑战、基于Java多线程的实现方案与优化等角度层层递进,让读者感受真实的Java线程“威力”。 最后,总结多线程编程的常见问题与使用技巧。

作者简介

作者储诚益,科大讯飞高级系统架构师,致力于研究下一代工业互联网系统架构、人工智能、中小制造企业数字化转型。拥有十余年的IT领域工作经验,曾就职于多家知名IT企业并负责技术架构设计和管理工作,积累了丰富的分布式架构、大数据、云计算以及大规模IT系统等的建设、实施、咨询、管理经验。

章节目录

版权信息

前言

基础篇

第1章 Linux线程基础

1.1 Linux进程

1.2 Linux进程间通信

1.3 CPU任务调度

1.4 Linux线程

1.5 线程同步:互斥量

1.6 线程同步:条件变量

1.7 线程同步:信号量

1.8 小结

第2章 JVM基础知识

2.1 Java、JDK、JRE与JVM

2.2 Java跨平台原理

2.3 JVM系统架构

2.4 JVM与操作系统的线程模型

2.5 JNI机制

2.6 小结

第3章 JVM线程

3.1 为什么需要多线程

3.2 多线程带来的问题

3.3 Java内存模型与线程规范

3.4 内存一致性协议

3.5 内存屏障

3.6 JVM的线程

3.7 Java线程创建过程

3.8 Java线程生命周期

3.9 小结

第4章 JVM线程通信原理

4.1 ParkEvent原理

4.2 Parker实现原理

4.3 sleep方法实现原理

4.4 ObjectMonitor实现原理

4.5 wait与notify方法实现原理

4.6 yield方法实现原理

4.7 join方法实现原理

4.8 stop方法实现原理

4.9 interrupt方法实现原理

4.10 小结

第5章 JVM线程同步机制

5.1 Mark Word

5.2 synchronized设计原理

5.3 synchronized源码分析

5.4 volatile实现原理

5.5 volatile伪共享

5.6 CAS硬件同步原语

5.7 Unsafe功能介绍

5.8 Unsafe实现原理

5.9 LockSupport实现原理

5.10 小结

进阶篇

第6章 Java锁实现原理

6.1 CPU架构

6.2 自旋锁的诞生

6.3 MCS锁的实现

6.4 CLH锁的实现

6.5 AQS设计原理

6.6 AQS实现过程

6.7 ReentrantLock实现原理

6.8 ReentrantReadWriteLock实现原理

6.9 CountDownLatch实现原理

6.10 小结

第7章 Java原子操作类实现原理

7.1 AtomicInteger实现原理

7.2 AtomicBoolean实现原理

7.3 AtomicIntegerArray实现原理

7.4 AtomicIntegerFieldUpdater实现原理

7.5 long的原子性修改实现原理

7.6 LongAdder实现原理

7.7 小结

第8章 Java并发容器实现原理

8.1 CopyOnWriteArrayList实现原理

8.2 ConcurrentHashMap实现原理

8.3 ConcurrentSkipListMap实现原理

8.4 LinkedBlockingQueue实现原理

8.5 ArrayBlockingQueue实现原理

8.6 SynchronousQueue实现原理

8.7 LinkedBlockingDeque实现原理

8.8 小结

第9章 Java线程池实现原理

9.1 对象池设计模式

9.2 生产者-消费者模式

9.3 普通线程池的实现原理

9.4 FutureTask实现原理

9.5 ScheduledThreadPoolExecutor实现原理

9.6 Executors实现原理

9.7 小结

应用篇

第10章 Java线程池使用

10.1 线程池的使用模型

10.2 本地缓存实现

10.3 多线程异步执行

10.4 批量处理任务的执行

10.5 并发排队队列

10.6 小结

第11章 Java多线程编程技巧

11.1 线程异常处理

11.2 线程正确关闭

11.3 线程死锁

11.4 并发容器的使用

11.5 小结

一本书讲透Java线程:原理与实践是2023年由机械工业出版社出版,作者储诚益。

得书感谢您对《一本书讲透Java线程:原理与实践》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
推荐系统技术原理与实践 电子书
本书系统介绍推荐系统的技术理论和实践。首先介绍推荐系统的基础知识;然后介绍推荐系统常用的机器学习和深度学习模型;接着重点介绍推荐系统的4层级联架构,包括召回、粗排、精排和重排,以及谷歌、阿里巴巴等大型互联网公司在4层级联架构中的模型设计和实现原理;紧接其后介绍多目标排序在推荐系统中的应用,具体介绍阿里巴巴、谷歌等大型互联网公司的实践;最后从不同角度审视推荐系统,介绍公平性问题、知识蒸馏、冷启动等各
认识编程:以Python语言讲透编程的本质 电子书
本书带你推开编程世界的大门,领略科技的奇妙和程序的精髓。
分布式架构原理与实践 电子书
本书从软件结构的发展历史入手,描述了分布式架构的特性和存在的问题,并围绕这些问题展开了分析和实践。
软件定义网络核心原理与应用实践 电子书
本书分为核心原理和应用实践两大部分,对软件定义网络(SDN)技术进行了全面剖析和深入解读。第一部分首先阐述了SDN的设计思想与体系架构,详细分析了软件定义网络的控制转发分离和可编程性两个突出属性,其次介绍了以OpenFlow为代表的SDN南向接口协议,以及北向和东向接U协议,接下来根据SDN的层次化架构,依次介绍了SDN数据平面、控制平面以及SDN应用案例,最后梳理总结J,SDN标准化进展以及学术
游戏引擎原理与实践 卷1:基础框架 电子书
着重讲解游戏引擎的基础知识和工作原理,并结合配套的游戏引擎示例和详尽的代码,介绍游戏引擎开发的技术细节。