深入理解高并發(fā)編程:JDK核心技術(shù)
定 價(jià):129 元
- 作者:冰河
- 出版時(shí)間:2023/2/1
- ISBN:9787121449338
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP312.8
- 頁(yè)碼:404
- 紙張:
- 版次:01
- 開本:16開
本書從實(shí)際需求出發(fā),全面細(xì)致地介紹了JDK高并發(fā)編程的基礎(chǔ)知識(shí)、核心工具和線程池核心技術(shù)。通過閱讀和學(xué)習(xí)本書,讀者可以對(duì)JDK高并發(fā)編程有更加全面、深入、透徹的理解,提高對(duì)高并發(fā)編程問題的處理能力和項(xiàng)目實(shí)戰(zhàn)能力,并提高站在更高層面解決高并發(fā)編程系統(tǒng)架構(gòu)問題的能力。
冰河,互聯(lián)網(wǎng)資深技術(shù)專家、MySQL 技術(shù)專家、分布式與微服務(wù)架構(gòu)專家。多年來(lái)一直致力于分布式系統(tǒng)架構(gòu)、微服務(wù)、分布式數(shù)據(jù)庫(kù)、分布式事務(wù)與大數(shù)據(jù)技術(shù)的研究,在高并發(fā)、高可用、高可擴(kuò)展性、高可維護(hù)性和大數(shù)據(jù)等領(lǐng)域擁有豐富的架構(gòu)經(jīng)驗(yàn)?梢暬鄶(shù)據(jù)源數(shù)據(jù)異構(gòu)中間件 mykit-data 作者,暢銷書《深入理解分布式事務(wù):原理與實(shí)戰(zhàn)》《海量數(shù)據(jù)處理與大數(shù)據(jù)技術(shù)實(shí)戰(zhàn)》和《MySQL 技術(shù)大全:開發(fā)、優(yōu)化與運(yùn)維實(shí)戰(zhàn)》《深入理解高并發(fā)編程:核心原理與案例實(shí)戰(zhàn)》作者,“冰河技術(shù)”微信公眾號(hào)作者。
基礎(chǔ)篇
第1章 進(jìn)程與線程的基本概述 1
1.1 進(jìn)程 1
1.2 線程 6
1.3 線程調(diào)度與上下文切換 11
1.4 進(jìn)程與線程的綜合對(duì)比 14
1.5 查看進(jìn)程與線程 14
第2章 線程的基本操作 23
2.1 創(chuàng)建線程 23
2.2 線程的基本操作 30
2.3 線程組 38
工具篇
第3章 同步集合 45
3.1 Vector同步集合類及案例 45
3.2 Stack同步集合類及案例 49
3.3 Hashtable同步集合類及案例 51
3.4 同步包裝器及測(cè)試 53
3.5 同步集合的缺陷 56
第4章 并發(fā)List集合類 60
4.1 CopyOnWriteArrayList概述 60
4.2 寫時(shí)復(fù)制技術(shù) 61
4.3 初始化 64
4.4 添加數(shù)據(jù) 65
4.5 讀取數(shù)據(jù) 65
4.6 修改數(shù)據(jù) 66
4.7 刪除數(shù)據(jù) 69
4.8 遍歷數(shù)據(jù) 70
4.9 使用案例 72
第5章 并發(fā)Set集合類 74
5.1 CopyOnWriteArraySet集合類 74
5.2 ConcurrentSkipListSet集合類 84
第6章 并發(fā)Map集合類 93
6.1 ConcurrentHashMap集合類 93
6.2 ConcurrentSkipListMap集合類 121
第7章 并發(fā)阻塞隊(duì)列 135
7.1 并發(fā)阻塞隊(duì)列簡(jiǎn)介 135
7.2 ArrayBlockingQueue 139
7.3 LinkedBlockingQueue 148
7.4 PriorityBlockingQueue 152
7.4.1 概述 152
7.5 DelayQueue 158
7.6 SynchronousQueue 163
7.7 LinkedTransferQueue 167
7.8 LinkedBlockingDeque 175
7.9 并發(fā)阻塞隊(duì)列案例 181
第8章 并發(fā)非阻塞隊(duì)列 188
8.1 并發(fā)非阻塞隊(duì)列簡(jiǎn)介 188
8.2 ConcurrentLinkedQueue 193
8.3 ConcurrentLinkedDeque 201
第9章 并發(fā)工具類 209
9.1 CountDownLatch工具類 209
9.2 CyclicBarrier工具類 213
9.3 Phaser工具類 217
9.4 Semaphore工具類 225
9.5 Exchanger工具類 229
第10章 鎖工具類 233
10.1 Lock接口 233
10.2 Condition接口 236
10.3 ReentrantLock可重入鎖 240
10.4 ReadWriteLock讀寫鎖 245
10.5 StampedLock讀寫鎖 248
10.6 鎖性能對(duì)比案例 259
第11章 無(wú)鎖原子類 264
11.1 無(wú)鎖原子類簡(jiǎn)介 264
11.2 操作基本類型的原子類 265
11.3 操作引用類型的原子類 269
11.4 操作字段類型的原子類 273
11.5 操作數(shù)組類型的原子類 277
11.6 累加器類型的原子類 281
11.7 性能對(duì)比案例 285
第12章 線程工具類 295
12.1 Thread類 295
12.2 ThreadLocal類 306
12.3 Fork/Join框架 306
12.4 線程工具類案例 307
第13章 異步編程工具類 312
13.1 Callable接口 312
13.2 Future接口 319
13.3 CompletableFuture 330
13.4 CompletionService 338
線程池技術(shù)篇
第14章 線程池總體結(jié)構(gòu) 343
14.1 線程池簡(jiǎn)介 343
14.2 線程池頂層接口和抽象類 347
第15章 線程池核心流程 357
15.1 線程池正確運(yùn)行的核心流程 357
15.2 線程池執(zhí)行任務(wù)的核心流程 362
15.3 Worker線程的核心流程 367
15.4 線程池優(yōu)雅退出的核心流程 373
第16章 定時(shí)任務(wù)線程池 378
16.1 ScheduledThreadPoolExecutor類與Timer類的區(qū)別 378
16.2 定時(shí)任務(wù)線程池的初始化 380
16.3 定時(shí)任務(wù)線程池的調(diào)度流程 380