编辑推荐
全面解析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线程:原理与实践》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。