欢迎来到天天文库
浏览记录
ID:40555947
大小:1.89 MB
页数:79页
时间:2019-08-04
《实战Java高并发程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、前言目录第1章走入并行世界........................................................................................................................................11.1何去何从的并行计算11.1.1忘掉那该死的并行21.1.2可怕的现实:摩尔定律的失效41.1.3柳暗花明:不断地前进51.1.4光明或是黑暗61.2你必须知道的几个概念61.2.1同步(Synchronous)
2、和异步(Asynchronous)71.2.2并发(Concurrency)和并行(Parallelism)81.2.3临界区91.2.4阻塞(Blocking)和非阻塞(Non-Blocking)91.2.5死锁(Deadlock)、饥饿(Starvation)和活锁(Livelock)91.3并发级别111.3.1阻塞(Blocking)111.3.2无饥饿(Starvation-Free)111.3.3无障碍(Obstruction-Free)121.3.4无锁(Lock-Free)12V1.3.5无
3、等待(Wait-Free)131.4有关并行的两个重要定律131.4.1Amdahl定律131.4.2Gustafson定律161.4.3Amdahl定律和Gustafson定律是否相互矛盾161.5回到Java:JMM171.5.1原子性(Atomicity)181.5.2可见性(Visibility)201.5.3有序性(Ordering)221.5.4哪些指令不能重排:Happen-Before规则271.6参考文献27第2章Java并行程序基础..............................
4、................................................................................................292.1有关线程你必须知道的事292.2初始线程:线程的基本操作322.2.1新建线程322.2.2终止线程342.2.3线程中断382.2.4等待(wait)和通知(notify)412.2.5挂起(suspend)和继续执行(resume)线程442.2.6等待线程结束(join)和谦让(yield)482.3vol
5、atile与Java内存模型(JMM)502.4分门别类的管理:线程组522.5驻守后台:守护线程(Daemon)542.6先干重要的事:线程优先级552.7线程安全的概念与synchronized57前言2.8程序中的幽灵:隐蔽的错误612.8.1无提示的错误案例612.8.2并发下的ArrayList622.8.3并发下诡异的HashMap632.8.4初学者常见问题:错误的加锁662.9参考文献68第3章JDK并发包.............................................
6、.............................................................................................703.1多线程的团队协作:同步控制703.1.1synchronized的功能扩展:重入锁713.1.2重入锁的好搭档:Condition条件803.1.3允许多个线程同时访问:信号量(Semaphore)833.1.4ReadWriteLock读写锁853.1.5倒计时器:CountDownLatch873.1.6循环栅栏:
7、CyclicBarrier893.1.7线程阻塞工具类:LockSupport923.2线程复用:线程池953.2.1什么是线程池963.2.2不要重复发明轮子:JDK对线程池的支持973.2.3刨根究底:核心线程池的内部实现1023.2.4超负载了怎么办:拒绝策略1063.2.5自定义线程创建:ThreadFactory1093.2.6我的应用我做主:扩展线程池1103.2.7合理的选择:优化线程池线程数量1123.2.8堆栈去哪里了:在线程池中寻找堆栈1133.2.9分而治之:Fork/Join框架117
8、VII3.3不要重复发明轮子:JDK的并发容器1213.3.1超好用的工具类:并发集合简介1213.3.2线程安全的HashMap1223.3.3有关List的线程安全1233.3.4高效读写的队列:深度剖析ConcurrentLinkedQueue1233.3.5高效读取:不变模式下的CopyOnWriteArrayList1293.3.6数据共享通道:BlockingQueue1
此文档下载收益归作者所有