《Java并发编程从入门到精通》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:张振华著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2015
  • ISBN:9787302401919
  • 页数:216 页
图书介绍:本书从多并发原理出发,详细讲解多并发、多线程开发方法,内容包括线程生命周期,并发与并发量,线程安全,线程间交互,线程池原理及应用,JDK7新增的Fork/Join详解,线程使用与监控,线程池应用,TOMCAT线程池设置,线程的监控及其分析,Android的线程及其开发等等。

第1部分 线程并发基础 2

第1章 概念部分 2

1.1 CPU核心数、线程数 2

1.2 CPU时间片轮转机制 4

1.3 什么是进程和什么是线程 4

1.4 进程与线程比对 5

1.5 什么是并行运行 6

1.6 什么是并发运行 6

1.7 什么是吞吐量 7

1.8 高并发编程的意义及其好处和注意事项 8

1.9 分布式、并行运算、并发运算 10

1.10 Linux和Windows对于并发采取的不同机制 11

第2章 认识Java里面的Thread 12

2.1 线程简单实现的三种方法 12

2.2 Thread里面的属性和方法 16

2.3 关于线程的中断机制 21

2.4 线程的生命周期 25

2.5 什么是守护线程 27

2.6 线程组 29

2.7 当前线程副本:ThreadLocal 30

2.8 线程异常的处理 34

第3章 Thread安全 37

3.1 初识Java内存模型与多线程 37

3.2 什么是不安全 38

3.3 什么是安全 40

3.4 隐式锁,又称线程同步synchronized 41

3.5 显示锁Lock和ReentrantLock 45

3.6 显示锁ReadWriteLock和ReentrantRead WriteLock 49

3.7 显示锁StampedLock 54

3.8 什么是死锁 58

3.9 Java关键字volatile修饰变量 60

3.10 原子操作:atomic 60

3.11 单利模式的写法 62

第4章 线程安全的集合类 64

4.1 java.util.Hashtable 64

4.2 java.util.concurrent.ConcurrentHashMap 66

4.3 java.util.concurrent.CopyOnWriteArrayList 68

4.4 java.util.concurrent.CopyOnWriteArraySet 70

4.5 CopyOnWrite机制介绍 71

4.6 Vector 73

4.7 常用的StringBuffer与StringBuilder 75

第2部分 线程并发晋级之高级部分 79

第5章 多线程之间交互:线程阀 79

5.1 阻塞队列BlockingQueue 79

5.2 数组阻塞队列ArrayBlockingQueue 81

5.3 链表阻塞队列LinkedBlockingQueue 84

5.4 优先级阻塞队列PriorityBlockingQueue 86

5.5 延时队列DelayQueue 87

5.6 同步队列SynchronousQueue 90

5.7 链表双向阻塞队列LinkedBlockingDeque 93

5.8 链表传输队列LinkedTransferQueue 93

5.9 同步计数器CountDownLatch 97

5.10 抽象队列化同步器AbstractQueued Synchronizer 100

5.11 同步计数器Semaphore 103

5.12 同步计数器CyclicBarrier 107

第6章 线程池 113

6.1 什么是线程池 113

6.2 newSingleThreadExecutor的使用 114

6.3 newCachedThreadPool的使用 116

6.4 newFixedThreadPool的使用 119

6.5 线程池的好处 121

6.6 线程池的工作机制及其原理 122

6.7 自定义线程池与ExecutorService 123

6.8 线程池在工作中的错误使用 130

第7章 JDK7新增的Fork/Join 132

7.1 认识Future任务机制和FutureTask 132

7.2 什么是Fork/Join框架 135

7.3 认识Fork/Join的JDK里面的家族 138

7.4 Fork/Join框架的实现原理 140

7.5 异常处理机制和办法 143

7.6 Fork/Join模式优缺点及其实际应用场景 143

第3部分 实际的使用、监控与拓展 147

第8章 线程、线程池在实际互联网项目开发中的应用 147

8.1 Servlet线程的设计 147

8.2 线程池如何合理设计和配置 149

8.3 Tomcat中线程池如何合理设置 149

8.4 Nginx线程池 154

8.5 数据库连接池 155

8.6 如何在分布式系统中实现高并发 158

第9章 线程的监控及其日常工作中如何分析 160

9.1 Java线程池的监控 160

9.2 ForkJoin如何监控 163

9.3 Java内存结构 165

9.4 可视化监控工具的使用 169

9.4.1 VisualVM的使用 169

9.4.2 JConsole的使用 174

9.4.3 Oracle Java Mission Control 175

9.5 Linux线程分析监控使用方法 177

9.6 Linux分析监控的运行脚本 180

9.7 Eclipse里面如何调试并发程序 181

9.8 如何通过压力测试来测试服务器的抗压能力 183

9.9 MultithreadedTC测试并发介绍 186

第10章 Android中线程的应用 189

10.1 Android进程基本知识 189

10.2 Android进程的生命周期 190

10.3 Android中Activity的生命周期 192

10.4 Android线程的运行机制 193

10.5 Android异步线程的处理方法 195

10.6 Android异步线程的原理与实现 196

附录1 JVM的参数 202

附录2 jstat的语法 207

附录3 jstat中一些术语的中文解释 209

附录4 Tomcat配置文件server.xml中Executor的参数 211

附录5 Thread的API 213

结束语 216