Java多线程并发体系实战(微课视频版)
刘宁萌
前言
2005年左右民用的多核CPU正式进入市场,标志着一个新时代来临了。双核和多核处理器设计用于在一枚处理器中集成两个或多个完整执行内核,以支持同时执行并管理多个任务。以前的单核CPU相当于一个人工作,它有很多任务,并很快地在任务之间切换工作,给人们造成的感觉好像是同时在执行,例如我上了一个聊天软件,我又在打游戏,感觉好像在同时执行,实际上单核CPU只是很快速地在各个任务之间切换工作,而多核心CPU相当于有多个人在同时工作,这才是真正意义上的多核心同时工作,当然它们也会在各个任务之间切换调度。
Java的多线程Thread核心类早在JDK 1.0就已经有了,从一开始就确立了Java最基础的线程模型,并且这样的线程模型在后续的修补中,并未发生实质上的变更,可以说是一个具有传承性的良好设计。
随着多核CPU的到来,在2004年发布的JDK 1.5中加入了Executors线程池、Callable、Future异步任务支持、Lock锁、concurrent并发包下的大量工具类,标志着Java多线程的时代来临了。
本书特点
本书以JDK 17长期维护版本为示例,详细地介绍了与Java多线程并发相关的知识体系,让读者不仅知其然,而且知其所以然。本书对多线程相关的理论分门别类、层层递进地进行详细叙述和透彻分析,既体现了各知识点之间的联系,又兼顾了其渐进性。本书在介绍每个知识点时都给出了该知识点的应用场景,同时配合代码演示,让读者更能明白其实现原理、使用方式。本书丰富的免费配套资源包括源代码、笔记、完整的配套视频。
本书主要内容
第1章介绍了Thread线程对象的创建方式、启动方式、常用方法、优先级、守护线程。
第2章介绍了ThreadGroup线程组的概念、线程对象构造器、线程类常用方法、线程对象异常捕获、等待线程对象销毁、线程对象的优雅关闭。
第3章介绍了线程之间的协作,sync…