图书介绍

Java并行程序设计pdf电子书版本下载

Java并行程序设计
  • 张杨编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302392309
  • 出版时间:2015
  • 标注页数:207页
  • 文件大小:28MB
  • 文件页数:218页
  • 主题词:JAVA语言-程序设计-教材

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
下载压缩包 [复制下载地址] 温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页

下载说明

Java并行程序设计PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 绪论 1

1.1 概述 1

1.2 相关概念和术语 2

1.2.1 并发与并行 2

1.2.2 串行执行和顺序执行 4

1.2.3 线程安全与线程不安全 4

1.2.4 数据竞争 5

1.2.5 超线程 5

1.2.6 加速比 6

1.3 Java并发方面的特性 7

1.4 并发程序设计的方法 8

1.4.1 分治方法 8

1.4.2 流水线 8

1.4.3 消息传递 9

1.5 并行程序的评判标准 9

1.6 程序运行的相关问题说明 10

习题 11

第2章 线程 12

2.1 什么是线程 12

2.2 线程的状态 13

2.2.1 创建 13

2.2.2 就绪 13

2.2.3 运行 14

2.2.4 阻塞 14

2.2.5 终止 14

2.3 线程的创建 15

2.3.1 继承类Thread 15

2.3.2 实现Runnable接口 16

2.3.3 两种方法的比较 18

2.4 线程的属性 18

2.4.1 线程标识符 18

2.4.2 线程名 20

2.4.3 线程的优先级和调度 23

2.4.4 线程状态 26

2.4.5 守护线程 28

2.5 线程管理 31

2.5.1 join方法 32

2.5.2 sleep方法 35

2.5.3 yield方法 36

2.5.4 线程的中断 36

2.5.5 其他 38

2.6 线程分组 38

2.7 带返回值的线程 41

2.7.1 接口Callable 41

2.7.2 接口Future 41

2.7.3 Callable与Runnable的比较 45

习题 45

第3章 线程同步 46

3.1 概述 46

3.2 基本概念 48

3.2.1 临界区 48

3.2.2 监视器 49

3.2.3 阻塞和非阻塞 49

3.3 锁 49

3.3.1 同步锁 50

3.3.2 可重入锁 52

3.3.3 读写锁 60

3.3.4 三种锁机制的比较 66

3.3.5 锁的不足之处 66

3.4 volatile变量 67

3.5 原子操作 68

3.5.1 AtomicInteger 68

3.5.2 AtomicReference 71

3.5.3 其他 73

3.6 死锁和活锁 73

3.6.1 死锁 73

3.6.2 活锁 76

3.7 多核时代减少锁竞争的方法 78

习题 79

第4章 线程间通信 80

4.1 等待集合 80

4.2 wait、notify、notifyAll方法 80

4.2.1 方法wait 80

4.2.2 方法notify 81

4.2.3 方法notifyAll 81

4.2.4 实例 81

4.3 条件变量 88

4.3.1 方法await 89

4.3.2 方法signal 89

4.3.3 方法signalAll 89

4.3.4 实例 90

习题 93

第5章 线程同步障栅 94

5.1 障栅 94

5.2 倒计时门闩 99

5.3 信号量 102

5.4 同步队列 107

5.5 交换器 110

5.6 阶段化处理 114

习题 123

第6章 线程执行器 124

6.1 线程池 124

6.1.1 接口Executor 125

6.1.2 接口ExecutorService 125

6.1.3 类ThreadPoolExecutor 125

6.1.4 工厂类Executors 126

6.1.5 使用线程执行器处理无返回值的线程 127

6.2 固定数目的线程执行器 129

6.3 使用线程执行器处理有返回值的线程 131

6.4 延迟执行、周期性执行的执行器 134

6.4.1 接口ScheduledExecutorService 134

6.4.2 接口ScheduledFuture 135

6.4.3 举例 135

6.5 取消任务的执行 138

6.6 任务装载和结果处理的分离 140

6.7 管理被拒绝的任务 142

第7章 Fork/Join框架 145

7.1 概述 145

7.2 相关知识 146

7.2.1 负载均衡 146

7.2.2 分治方法 146

7.2.3 工作窃取算法 147

7.3 Fork/Join框架的编程模式 147

7.4 类ForkJoinPool 148

7.4.1 ForkJoinPool的创建 148

7.4.2 ForJoinPool的使用 149

7.5 任务 150

7.5.1 任务的创建 150

7.5.2 任务的运行方式 158

7.5.3 任务的取消 160

7.6 Fork/Join框架的限制 164

习题 164

第8章 自定义并发类 165

8.1 自定义线程工厂 165

8.2 自定义线程池 167

8.3 在执行器中使用自定义的线程工厂 169

8.4 自定义周期性任务 171

8.5 自定义与Fork/Join框架相关的并发类 175

8.5.1 类ForkJoinWorkerThread 175

8.5.2 接口ForkJoinPool.ForkJoinWorkerThreadFactory 176

8.5.3 自定义Fork/Join框架中的线程 176

8.5.4 自定义任务 179

8.6 自定义同步类 181

8.6.1 自定义锁 182

8.6.2 自定义原子操作 185

习题 187

第9章 线程安全的集合 188

9.1 线程安全的双端队列 188

9.2 线程安全的哈希表 192

9.3 线程安全的跳表 194

9.4 随机数产生 196

第10章 多线程程序的性能和测试 198

10.1 性能 198

10.2 可伸缩性 200

10.3 多线程程序的测试 200

第11章 面向方面编程在并行程序设计中的应用 201

11.1 面向方面编程相关知识简介 201

11.1.1 关注点的分离 201

11.1.2 方面 201

11.1.3 切点 202

11.1.4 通知 202

11.1.5 AspectJ工具 202

11.2 Java注释接口 204

11.3 应用示例 205

习题 207

精品推荐