Java高并发编程详解 深入理解并发核心库pdf下载

Java高并发编程详解 深入理解并发核心库百度网盘pdf下载

作者:
简介:Java高并发编程详解 深入理解并发核心库
出版社:
出版时间:2020-07
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

作  者:汪文君 著
定  价:99
出 版 社:机械工业出版社
出版日期:2020年07月01日
页  数:396
装  帧:平装
ISBN:9787111657705
推荐序一
推荐序二
推荐序三
推荐序四
前言
章 JMH
1.1 JMH简介
1.2 JMH快速入门
1.2.1 用main方法进行测试
1.2.2 用JMH进行微基准测试
1.3 JMH的基本用法
1.3.1 @Benchmark标记基准测试方法
1.3.2 Warp以及Measurement
1.3.3 四enchmarkMode
1.3.4 OutputTimeUnit
1.3.5 三大State的使用
1.3.6 @Param的妙用
1.3.7 JMH的测试套件(Fixture)
1.3.8 CompilerControl
1.4 编写正确的微基准测试以及不错用法
1.4.1 编写正确的微基准测试用例
1.4.2 一些不错的用法
1.5 JMH的Profiler
1.5.1 StackProfiler
1.5.2 GcProfiler
1.5.3 ClassLoaderProfiler
1.5.4 CompilerProfiler
1.6 本章总结
第2章 Java并发包之原子类型详解
2.1 AtomicInteger详解
2.1.1 性能测试对比
2.1.2 AtomicInteger的基本用法
2.1.3 AtomicInteger内幕
2.1.4 AtomicInteger总结
2.2 AtomicBoolean详解
2.2.1 AtomicBoolean的基本用法
2.2.2 AtomicBoolean内幕
2.2.3 Try Lock显式锁的实现
2.2.4 AtomicBoolean总结
2.3 AtomicLong详解
2.4 AtomicReference详解
2.4.1 AtomicReference的应用场景
2.4.2 AtomicReference的基本用法
2.4.3 AtomicReference的内幕
2.4.4 AtomicReference总结
2.5 AtomicStampedReference详解
2.5.1 CAS算法ABA问题
2.5.2 AtomicStampedReference详解
2.5.3 AtomicStampedReference总结
2.6 AtomicArray详解
2.7 AtomicFieldUpdater详解
2.7.1 原子性更新对象属性
2.7.2 注意事项
2.7.3 AtomicFieldUpdater总结
2.8 sun.misc.Unsafe详解
2.8.1 如何获取Unsafe
2.8.2 JNI、Java和C/C++混合编程
2.8.3 危险的Unsafe
2.8.4 sun.misc.Unsafe总结
2.9 本章总结
第3章 Java并发包之工具类详解
3.1 CountDownLatch工具详解
3.1.1 等待所有子任务结束
3.1.2 CountDownLatch的其他方法及总结
3.2 CyclicBarrier工具详解
3.2.1 等待所有子任务结束
3.2.2 CyclicBarrier的循环特性
3.2.3 CyclicBarrier的其他方法以及总结
3.2.4 CyclicBarrier VS. CountDownLatch
3.3 Exchanger工具详解
3.3.1 一对线程间的数据交换
3.3.2 Exchanger的方法详解
3.3.3 Exchanger总结
3.4 Semaphore工具详解
3.4.1 Semaphore同时在线的用户数量
3.4.2 使用Semaphore定义try lock
3.4.3 Semaphore其他方法详解
3.4.4 扩展Semaphore增强release
3.4.5 Semaphore总结
3.5 Phaser工具详解
3.5.1 Phaser的基本用法
3.5.2 Phase(阶段)以及Phaser方法详解
3.5.3 Phaser层级关系
3.5.4 Phaser总结
3.6 Lock&ReentrantLock详解
3.6.1 Lock及ReentrantLock方法详解
3.6.2 正确使用显式锁Lock
3.6.3 ReentrantLock VS. Synchronized关键字
3.6.4 显式锁Lock总结
3.7 ReadWriteLock&ReentrantReadWriteLock详解
3.7.1 读写锁的基本使用方法
3.7.2 读写锁的方法
3.7.3 基准测试性能对比
3.7.4 读写锁总结
3.8 Condition详解
3.8.1 初识Condition
3.8.2 Condition接口方法详解
3.8.3 使用Condition之生产者消费者
3.8.4 Condition总结
3.9 StampedLock详解
3.9.1 读写锁的饥饿写问题
3.9.2 StampedLock的使用
3.9.3 与其他锁的性能对比
3.9.4 StampedLock总结
3.10 Guava之Monitor详解
3.10.1 Monitor及Guard
3.10.2 Monitor的其他方法
3.10.3 Monitor总结
3.11 Guava之RateLimiter详解
3.11.1 RateLimiter的基本使用
3.11.2 RateLimiter的限流操作——漏桶算法
3.11.3 令牌环桶算法
3.11.4 RateLimiter总结
3.12 本章总结
第4章 Java并发包之并发容器详解
4.1 链表
4.1.1 基本的链表
4.1.2 优先级链表
4.1.3 跳表(SkipList)
4.1.4 链表总结
4.2 BlockingQueue(阻塞队列)
4.2.1 ArrayBlockingQueue
4.2.2 PriorityBlockingQueue
4.2.3 LinkedBlockingQueue
4.2.4 DelayQueue
4.2.5 SynchronousQueue
4.2.6 LinkedBlockingDeque
4.2.7 LinkedTransferQueue
4.2.8 BlockingQueue总结
4.3 ConcurrentQueue(并发队列)
4.3.1 并发队列的性能
4.3.2 并发队列在使用中需要注意的问题
4.3.3 并发队列总结
4.4 ConcurrentMap(并发映射)
4.4.1 ConcurrentHashMap简介
4.4.2 ConcurrentSkipListMap简介
4.4.3 并发映射总结
4.5 写时拷贝算法(Copy On Write)
4.5.1 CopyOnWrite读实现操作分析
4.5.2 CopyOnWrite写实现操作分析
4.5.3 CopyOnWrite总结
4.6 高并发无锁(Lock Free)数据结构的实现
4.6.1 高并发无锁链表的实现
4.6.2 Lock Free数据结构的测试
4.6.3 本节总结
4.7 本章总结
第5章 Java并发包之ExecutorService详解
5.1 Executor&ExecutorService详解
5.1.1 ThreadPoolExecutor详解
5.1.2 ScheduledExecutorService详解
5.1.3 关闭ExecutorService
5.1.4 Executors详解
5.1.5 ExecutorService总结
5.2 Future和Callback
5.2.1 Future详解
5.2.2 ExecutorService与Future
5.2.3 Future的不足之处
5.2.4 Google Guava的Future
5.2.5 Future总结
5.3 ForkJoinPool详解
5.3.1 Fork/Join Framework介绍
5.3.2 ForkJoinTask详解
5.3.3 ForkJoinPool总结
5.4 CompletionService详解
5.4.1 ExecutorService执行批量任务的缺陷
5.4.2 CompletionService详解
5.4.3 CompletionService总结
5.5 CompletableFuture详解
5.5.1 CompletableFuture的基本用法
5.5.2 任务的异步运行
5.5.3 异步任务链
5.5.4 合并多个Future
5.5.5 多Future的并行计算
5.5.6 错误处理
5.5.7 JDK 9对CompletableFuture的进一步支持
5.5.8 CompletableFuture总结
5.6 本章总结
第6章 Java Streams详解
6.1 Stream介绍及其基本操作
6.1.1 如何创建Stream
6.1.2 Stream之Intermediate操作
6.1.3 Stream之Terminal操作
6.1.4 NumericStream详解
6.1.5 Stream总结
6.2 Collector在Stream中的使用
6.2.1 初识Collector
6.2.2 Collectors用法详解
6.2.3 自定义Collector
6.2.4 Collector总结
6.3 Parallel Stream详解
6.3.1 并行流Parallel Stream
6.3.2 Spliterator 详解
6.3.3 Spliterator总结
6.4 本章总结
第7章 Metrics(Powerful Toolkit For Measure)
7.1 Metrics快速入门
7.1.1 如何监控度量应用程序
7.1.2 Metrics环境搭建
7.2 五大Metric详解
7.2.1 Meter
7.2.2 Gauge
7.2.3 Counter
7.2.4 Histogram
7.2.5 Timer
7.3 Reporter详解
7.3.1 ConsoleReporter
7.3.2 LogReporter
7.3.3 JMXReporter
7.3.4 CsvReporter
7.4 Metrics Plugins
7.4.1 Health Check
7.4.2 JVM Instrumentation
7.5 深入Metrics源码
7.5.1 MetricRegistry如何工作
7.5.2 Reporter如何工作
7.5.3 拾遗补漏
7.6 本章总结
本书由浅入深、循序渐进地介绍Java高并发核心库的精髓,帮助读者掌握相关内容的技术细节。
内容讲解以真实问题为导向,层层递进,环环紧扣,详细阐述每一个解决方案的来龙去脉。
通过大量的实际案例,原理剖析和实战代码相结合,让读者能够更加清晰深入地理解每一个技术细节的用法和实用技巧。
详细介绍Java微基准测试工具集JMH与平台级性能指标数据度量工具Metrics的使用方法,帮助读者快速开发出高效、健壮的并发应用程序。
本书共包含四大部分。
第①部分(章)详细介绍了JMH微基准测试工具的使用细节。该工具是由Oracle JVM开发团队相关成员开发的,开发者借助它能够了解自己编写的程序代码以及程序在运行期的性能表现。在本书的其他章节对API之间的性能进行对比时,主要也是依赖该工具,因此在学习本书的其他章节时,好能够掌握该部分内容。强烈推荐等