Java线程与并发编程实践

978-7-115-44036-5
作者: 【美】Jeff Friesen
译者: 鄢倩
编辑: 陈冀康
分类: Java

图书目录:

第 一部分 线程API

第 1章 Thread和Runnable 2

1.1 Thread和Runnable简介 2

1.1.1 创建Thread和Runnable对象 3

1.1.2 获取和设置线程状态 4

1.1.3 获取和设置线程的名称 5

1.1.4 获取一条线程的存活状态 5

1.1.5 获取一条线程的执行状态 6

1.1.6 获取和设置线程的优先级 6

1.1.7 获取和设置线程的守护线程状态 8

1.1.8 启动线程 9

1.2 操作更高 级的线程任务 12

1.2.1 中断线程 12

1.2.2 等待线程 16

1.2.3 线程睡眠 20

1.3 练习 23

1.4 小结 24

第 2章 同步 26

2.1 线程中的问题 26

2.1.1 竞态条件 26

2.1.2 缓存变量 29

2.2 同步临界区的访问 30

2.2.1 使用同步方法 32

2.2.2 使用同步块 33

2.3 谨防活跃性问题 34

2.4 Volatile和Final变量 39

2.5 练习 48

2.6 小结 50

第3章 等待和通知 52

3.1 等待/通知API一览 52

3.2 生产者和消费者 55

3.3 练习 65

3.4 小结 66

第4章 额外的线程能力 67

4.1 线程组 67

4.2 线程局部变量 73

4.3 定时器框架 77

4.3.1 深入Timer 81

4.3.2 深入TimerTask 85

4.4 练习 87

4.5 小结 88

第 二部分 并发工具类

第5章 并发工具类和Executor框架 90

5.1 探索Executor 91

5.2 练习 103

5.3 小结 105

第6章 同步器 106

6.1 倒 计时门闩 106

6.2 同步屏障 111

6.3 交换器 119

6.4 信号量 126

6.5 信号量和公平策略 127

6.6 Phaser 136

6.7 练习 139

6.8 小结 140

第7章 锁框架 142

同步及低级别的锁 142

7.1 锁 143

7.2 重入锁 145

7.3 条件 149

7.4 读写锁 157

7.5 重入读写锁 158

7.6 练习 165

7.7 小结 166

第8章 额外的并发工具类 167

8.1 并发集合 167

8.1.1 使用BlockingQueue和ArrayBlockingQueue 169

8.1.2 深入学习ConcurrentHashMap 172

8.2 原子变量 173

8.3 Fork/Join框架 179

8.4 Completion Service 190

8.5 练习 194

8.6 小结 196

第三部分 附录

附录A 练习题答案 198

第 1章:Thread和Runnable 198

第 2章:同步 201

第3章:等待和通知 205

第4章:额外的线程能力 208

第5章:并发工具类和Executor框架 211

第6章:同步器 215

第7章:锁框架 220

第8章:额外的并发工具 222

附录B Swing中的线程 225

单线程编程模型 225

线程化API 231

SwingUtilities和EventQueue 231

SwingWorker 240

定时器 245

基于定时器的幻灯片展示 249

详情

本书通过简洁易懂的内容,让读者掌握复杂的Java线程API以及并发的应用,这些知识能够让Java开发者在编写复杂的应用时更加游刃有余。同时,本书分为两个部分, 第一部分重在介绍线程API,第二部分重在介绍并发的应用。每一章都配备了详细的联系和示例,帮助读者更好地掌握相关内容。

图书摘要

相关图书

Effective Java中文版(原书第3版)
Effective Java中文版(原书第3版)
Java核心技术速学版(第3版)
Java核心技术速学版(第3版)
Java编程动手学
Java编程动手学
Java研发自测入门与进阶
Java研发自测入门与进阶
Java开发坑点解析:从根因分析到最佳实践
Java开发坑点解析:从根因分析到最佳实践
Java EE企业级应用开发实战(Spring Boot+Vue+Element)
Java EE企业级应用开发实战(Spring Boot+Vue+Element)

相关文章

相关课程