首页>参考读物>公共基础课>心理生活

一本书讲透Java线程:原理与实践
作者 : 储诚益 著
出版日期 : 2023-10-26
ISBN : 978-7-111-73726-1
定价 : 109.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 :
开本 : 16
原书名 :
原出版社:
属性分类: 店面
包含CD : 无CD
绝版 : 未绝版
图书简介

本书由科大讯飞高级系统架构师撰写,结合大量源码与图示,通俗易懂;自顶向下解析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线程“威力”。 最后,总结多线程编程的常见问题与使用技巧。

图书特色

科大讯飞高级系统架构师撰写,十余年开发经验总结,配合大量源码与图示,自顶向下详解Java线程实现原理与实践。

精讲JDK 17、JVM、Linux中Java线程的通信机制、同步机制、锁机制、原子计数器、线程安全容器、线程池的实现原理及诸多应用技巧,打通从应用到操作系统的线程知识脉络。

上架指导

计算机\程序设计

封底文字

互联网的每一个角落,无论是大型电商平台的秒杀活动,社交平台的实时消息推送,还是在线视频平台的流量洪峰,背后都离不开多线程技术的支持。本书深入介绍了Java线程的并发控制实现,在描述其原理的同时,详细解读了它们在真实业务场景下的应用。例如,如何利用synchronized和CAS来解决并发冲突,如何使用Java线程池技术来优化高并发应用的性能,以及如何通过线程安全的容器来保证数据的一致性等,带领你应对日益复杂的互联网挑战。如果你希望在Java多线程编程领域取得真正的进展,那么本书将是鲜见的系统性学习资料,值得每一位技术爱好者细细品味。
—— 韩国峰,美团餐饮系统技术总监

作者思维敏锐,善于思考。他结合多年的互联网从业经验,用通俗易懂的语言和图文并茂的案例来帮助读者更好地理解Java多线程知识,并带领大家参透多线程技术实现原理。无论是初学者还是多年的从业者,都可将此书作为枕边书,反复学习。
—— 李喜财,北京商越网络科技有限公司联合创始人、CTO

作者从事Java工作近20年,技术实力强、功底扎实,对Java技术栈原理理解深刻。本书深入浅出地解释了Java线程知识,可以帮助Java从业者快速提升技能,并应用于工作中。推荐大家认真阅读学习,早日精通Java线程,从容应对高并发与高性能问题。
—— 刘祺,安徽知祺科技有限公司创始人

储兄是互联网技术圈的老兵,他给出的一些解决方案,会让人发出“哇,还能这样”的感叹。如今,他重新梳理积累的技术知识以及在工作中遇到的问题、解决方案,以图书的形式呈现,讲解通俗易懂,适合作为多线程入门与进阶书籍,也可以作为工作中的案头工具书,非常值得阅读。
—— 柯飞,杭州荣鼎科技总经理

图书目录

吃透Java多线程:原理与实践模型
第一部分 JVM线程实现原理
第1章 Linux线程基础
1.1进程
1.2线程
1.3CPU任务调度
1.4Posix thread
1.5线程3种锁机制
第2章 JVM 基础知识
2.1Java、JRE与JVM
2.2JVM整体系统架构
2.3JVM与OS兼容性
2.4JVM在Linux上线程实现
2.5JNI的运行机制

第3章JVM 线程基础知识
3.1为什么会出现多线程
3.2多线程带来的问题
3.3Java线程安全规范
3.4Thread的基础知识
3.5JVM线程模型
3.6线程实现原理
3.7线程的生命周期
第4章 JVM 线程通信原理
4.1ParkEvent
4.2 Parker
4.3 ObjectMonitor
4.4 sleep实现原理
4.5 wait-notify实现原理
4.6 wait-notify实现原理
4.7 join的实现原理
4.8 stop实现原理

第5章 JVM对象及变量并发访问原理
5.1 Java内存存储模型
5.2对象头Mark Word
5.3内存一致性协议
5.4 JVM内存屏障实现
5.5 synchronized实现原理
5.6 volatile实现原理
5.7 CAS基本理念
5.8 Unsafe实现原理

第二部分 Java多线的控制原理

第6章 Lock的实现原理
6.1锁定的演进过程
6.2 锁的四种算法
6.3 LockSupport实现原理
6.4 AbstractQueuedSynchronizer实现原理
6.5 ReentrantLock实现原理
6.6 ReadWriteLock实现原理
6.7 CountDownLatch实现原理

第7章 线程安全集合原理
7.1 ConcurrentHashMap实现原理
8.2 AtomicInteger实现原理
8.3 AtomicIntegerArray实现原理
8.4 AtomicIntegerFieldUpdater实现原理
8.5 AtomicReferenceFieldUpdater实现原理
8.6 AtomicReferenceFieldUpdater实现原理
8.7 LinkedBlockingDeque实现原理
8.8 ConcurrentLinkedDeque实现原理
8.9 AtomicDouble实现原理
8.10 AtomicLongMap实现原理
8.11 CacheBuilder 实现原理

第9章 线程池实现原理
9.1 为什么会出现线程池
9.2 ThreadPoolExecutor 原理
9.3 四种线程池原理
9.4 四种线程池
9.5 线程大小参数设置
9.6 线程队列大小参数设置

第三部分 Java多线的实践模型

第10章 实时处理系统编程接口设计
10.1 线程池编程模型
10.2 单线程提交多线程执行
10.3 多线程提交单线程执行
10.4 多线程提交多线程执行
10.5 Redis的高性能实现原理
10.6 Netty高性能实现原理
10.7 Tomcat中多线程原理
10.8 disrupt 多线程原理


第11章 实时处理系统编程接口实现
11.1 本地缓存实践
11.2 千万级发短信实践
11.3 数据收集器实现
11.4 限流器实现
11.5 千万级优惠券实现
11.6 事件中心实践
第12章 多线程性能分析
12.1 日志导致CPU高性能分析
12.2 GC导致CPU高性能分析
12.2 任务线程CPU高性能分析
12.3 任务队列过长导致OOM分析
12.4 死锁分析

教学资源推荐
作者: (美)罗伯特S.费尔德曼(Robert S. Feldman)
作者: (美)保罗M.马金斯基(Paul M.Muchinsky) 著
作者: (美)利迪(Leedy,P.D.),(美)奥姆罗德(Ormrod,J.E.)
作者: [美]玛格丽特·马特林(Margaret W.Matlin)著
参考读物推荐
作者: [美]玛莎·M.莱恩汉(Marsha M. Linehan) 著
作者: 罗植文,阳生(阳志平) 著
作者: 陈春花 著