注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)Java多線(xiàn)程編程實(shí)戰(zhàn)指南:設(shè)計(jì)模式篇(第2版)

Java多線(xiàn)程編程實(shí)戰(zhàn)指南:設(shè)計(jì)模式篇(第2版)

Java多線(xiàn)程編程實(shí)戰(zhàn)指南:設(shè)計(jì)模式篇(第2版)

定 價(jià):¥69.00

作 者: 黃文海 著
出版社: 電子工業(yè)出版社
叢編項(xiàng): Java多線(xiàn)程編程實(shí)戰(zhàn)系列
標(biāo) 簽: 暫缺

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787121382451 出版時(shí)間: 2020-03-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 280 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  隨著CPU多核時(shí)代的到來(lái),多線(xiàn)程編程在充分利用計(jì)算資源、提高軟件服務(wù)質(zhì)量方面扮演了越來(lái)越重要的角色。解決多線(xiàn)程編程中頻繁出現(xiàn)的普遍問(wèn)題可以借鑒設(shè)計(jì)模式所提供的現(xiàn)成解決方案。然而,多線(xiàn)程編程相關(guān)的設(shè)計(jì)模式圖書(shū)多采用C++作為描述語(yǔ)言,且書(shū)中所舉的例子多與應(yīng)用開(kāi)發(fā)人員的實(shí)際工作相去甚遠(yuǎn)。《Java多線(xiàn)程編程實(shí)戰(zhàn)指南:設(shè)計(jì)模式篇(第2版)》采用Java語(yǔ)言和UML為描述語(yǔ)言,并結(jié)合作者多年工作經(jīng)歷及相關(guān)實(shí)踐經(jīng)驗(yàn),介紹了多線(xiàn)程環(huán)境下常用設(shè)計(jì)模式的來(lái)龍去脈:各個(gè)設(shè)計(jì)模式是什么樣的、典型的實(shí)際應(yīng)用場(chǎng)景、實(shí)際應(yīng)用時(shí)需要注意的事項(xiàng)及各個(gè)設(shè)計(jì)模式的可復(fù)用代碼實(shí)現(xiàn)代碼。《Java多線(xiàn)程編程實(shí)戰(zhàn)指南:設(shè)計(jì)模式篇(第2版)》第2版除更正了第1版中的錯(cuò)誤外,還新增了JDK 8、JDK 9中與多線(xiàn)程設(shè)計(jì)模式相關(guān)的內(nèi)容,并對(duì)代碼進(jìn)行了重構(gòu)和重新排版,使代碼部分重點(diǎn)更突出、更易于閱讀,以及提高了插圖的清晰度?!禞ava多線(xiàn)程編程實(shí)戰(zhàn)指南:設(shè)計(jì)模式篇(第2版)》適合有一定Java多線(xiàn)程編程基礎(chǔ)、經(jīng)驗(yàn)的讀者閱讀。

作者簡(jiǎn)介

  黃文海,2004年開(kāi)始從事軟件開(kāi)發(fā)工作,近幾年從事軟件項(xiàng)目管理工作。在其工作過(guò)程中積累了豐富的技術(shù)指導(dǎo)經(jīng)驗(yàn)和企業(yè)內(nèi)部培訓(xùn)經(jīng)驗(yàn)。曾在InfoQ中文站和IBM developerWorks上發(fā)表過(guò)十幾篇技術(shù)、項(xiàng)目管理文章。

圖書(shū)目錄

第1章 Java多線(xiàn)程編程實(shí)戰(zhàn)基礎(chǔ) 1
1.1 無(wú)處不在的線(xiàn)程 1
1.2 線(xiàn)程的創(chuàng)建與運(yùn)行 3
1.3 線(xiàn)程的狀態(tài)與上下文切換 5
1.4 對(duì)線(xiàn)程的監(jiān)視 8
1.5 原子性、內(nèi)存可見(jiàn)性和重排序――重新認(rèn)識(shí)synchronized
和volatile 11
1.6 多線(xiàn)程編程的優(yōu)勢(shì)和風(fēng)險(xiǎn) 13
1.7 多線(xiàn)程編程常用術(shù)語(yǔ) 14
第2章 設(shè)計(jì)模式簡(jiǎn)介 19
2.1 設(shè)計(jì)模式及其作用 19
2.2 多線(xiàn)程設(shè)計(jì)模式簡(jiǎn)介 22
2.3 設(shè)計(jì)模式的描述 23
第3章 Immutable Object(不可變對(duì)象)模式 25
3.1 Immutable Object模式簡(jiǎn)介 25
3.2 Immutable Object模式的架構(gòu) 27
3.3 Immutable Object模式實(shí)戰(zhàn)案例解析 29
3.4 Immutable Object模式的評(píng)價(jià)與實(shí)現(xiàn)考量 33
3.4.1 適用場(chǎng)景 33
3.4.2 對(duì)垃圾回收(Garbage Collection)的影響 34
3.4.3 使用等效或者近似的不可變對(duì)象 35
3.4.4 防御性復(fù)制 35
3.5 Immutable Object模式的可復(fù)用實(shí)現(xiàn)代碼 35
3.6 Java標(biāo)準(zhǔn)庫(kù)實(shí)例 35
3.7 相關(guān)模式 37
3.7.1 Thread Specific Storage模式(第10章) 37
3.7.2 Serial Thread Confinement模式(第11章) 37
3.8 參考資源 38
第4章 Guarded Suspension(保護(hù)性暫掛)模式 39
4.1 Guarded Suspension模式簡(jiǎn)介 39
4.2 Guarded Suspension模式的架構(gòu) 39
4.3 Guarded Suspension模式實(shí)戰(zhàn)案例解析 43
4.4 Guarded Suspension模式的評(píng)價(jià)與實(shí)現(xiàn)考量 50
4.4.1 內(nèi)存可見(jiàn)性和鎖泄漏(Lock Leak) 51
4.4.2 線(xiàn)程被過(guò)早地喚醒 52
4.4.3 嵌套監(jiān)視器鎖死 53
4.5 Guarded Suspension模式的可復(fù)用實(shí)現(xiàn)代碼 56
4.6 Java標(biāo)準(zhǔn)庫(kù)實(shí)例 56
4.7 相關(guān)模式 56
4.7.1 Promise模式(第6章) 57
4.7.2 Producer-Consumer模式(第7章) 57
4.8 參考資源 57
第5章 Two-phase Termination(兩階段終止)模式 58
5.1 Two-phase Termination模式簡(jiǎn)介 58
5.2 Two-phase Termination模式的架構(gòu) 59
5.3 Two-phase Termination模式實(shí)戰(zhàn)案例解析 61
5.4 Two-phase Termination模式的評(píng)價(jià)與實(shí)現(xiàn)考量 70
5.4.1 線(xiàn)程停止標(biāo)志 71
5.4.2 生產(chǎn)者/消費(fèi)者問(wèn)題中的線(xiàn)程停止 71
5.4.3 隱藏而非暴露可停止線(xiàn)程 73
5.5 Two-phase Termination模式的可復(fù)用實(shí)現(xiàn)代碼 73
5.6 Java標(biāo)準(zhǔn)庫(kù)實(shí)例 73
5.7 相關(guān)模式 74
5.7.1 Producer-Consumer模式(第7章) 74
5.7.2 Master-Slave模式(第12章) 74
5.8 參考資源 74
第6章 Promise(承諾)模式 75
6.1 Promise模式簡(jiǎn)介 75
6.2 Promise模式的架構(gòu) 75
6.3 Promise模式實(shí)戰(zhàn)案例解析 78
6.4 Promise模式的評(píng)價(jià)與實(shí)現(xiàn)考量 81
6.4.1 異步方法的異常處理 82
6.4.2 輪詢(xún) 82
6.4.3 異步任務(wù)的執(zhí)行 83
6.5 Promise模式的可復(fù)用實(shí)現(xiàn)代碼 84
6.6 Java標(biāo)準(zhǔn)庫(kù)實(shí)例 85
6.7 相關(guān)模式 85
6.7.1 Guarded Suspension模式(第4章) 85
6.7.2 Active Object模式(第8章) 86
6.7.3 Master-Slave模式(第12章) 86
6.7.4 Factory Method(工廠(chǎng)方法)模式 86
6.8 參考資源 86
第7章 Producer-Consumer(生產(chǎn)者/消費(fèi)者)模式 87
7.1 Producer-Consumer模式簡(jiǎn)介 87
7.2 Producer-Consumer模式的架構(gòu) 87
7.3 Producer-Consumer模式實(shí)戰(zhàn)案例解析 90
7.4 Producer-Consumer模式的評(píng)價(jià)與實(shí)現(xiàn)考量 93
7.4.1 產(chǎn)品的粒度 94
7.4.2 通道積壓 94
7.4.3 非阻塞式反壓與Reactive Streams規(guī)范 96
7.4.4 工作竊取算法 97
7.4.5 線(xiàn)程的停止 101
7.4.6 高性能、高可靠性的Producer-Consumer模式實(shí)現(xiàn) 101
7.5 Producer-Consumer模式的可復(fù)用實(shí)現(xiàn)代碼 102
7.6 Java標(biāo)準(zhǔn)庫(kù)實(shí)例 102
7.7 相關(guān)模式 102
7.7.1 Guarded Suspension模式(第4章) 102
7.7.2 Thread Pool模式(第9章) 103
7.8 參考資源 103
第8章 Active Object(主動(dòng)對(duì)象)模式 104
8.1 Active Object模式簡(jiǎn)介 104
8.2 Active Object模式的架構(gòu) 105
8.3 Active Object模式實(shí)戰(zhàn)案例解析 108
8.4 Active Object模式的評(píng)價(jià)與實(shí)現(xiàn)考量 115
8.4.1 錯(cuò)誤隔離 117
8.4.2 緩沖區(qū)監(jiān)控 118
8.4.3 緩沖區(qū)飽和處理策略 118
8.4.4 Scheduler空閑工作者線(xiàn)程清理 119
8.5 Active Object模式的可復(fù)用實(shí)現(xiàn)代碼 119
8.6 Java標(biāo)準(zhǔn)庫(kù)實(shí)例 123
8.7 相關(guān)模式 123
8.7.1 Promise模式(第6章) 123
8.7.2 Producer-Consumer模式(第7章) 123
8.8 參考資源 124
第9章 Thread Pool(線(xiàn)程池)模式 125
9.1 Thread Pool模式簡(jiǎn)介 125
9.2 Thread Pool模式的架構(gòu) 126
9.3 Thread Pool模式實(shí)戰(zhàn)案例解析 128
9.4 Thread Pool模式的評(píng)價(jià)與實(shí)現(xiàn)考量 130
9.4.1 工作隊(duì)列的選擇 131
9.4.2 線(xiàn)程池大小調(diào)校 132
9.4.3 線(xiàn)程池監(jiān)控 134
9.4.4 線(xiàn)程泄漏 135
9.4.5 可靠性與線(xiàn)程池飽和處理策略 135
9.4.6 死鎖 138
9.4.7 線(xiàn)程池空閑線(xiàn)程清理 139
9.5 Thread Pool模式的可復(fù)用實(shí)現(xiàn)代碼 140
9.6 Java標(biāo)準(zhǔn)庫(kù)實(shí)例 140
9.7 相關(guān)模式 140
9.7.1 Two-phase Termination模式(第5章) 140
9.7.2 Promise模式(第6章) 141
9.7.3 Producer-Consumer模式(第7章) 141
9.8 參考資源 141
第10章 Thread Specific Storage(線(xiàn)程特有存儲(chǔ))模式 142
10.1 Thread Specific Storage模式簡(jiǎn)介 142
10.2 Thread Specific Storage模式的架構(gòu) 144
10.3 Thread Specific Storage模式實(shí)戰(zhàn)案例解析 146
10.4 Thread Specific Storage模式的評(píng)價(jià)與實(shí)現(xiàn)考量 149
10.4.1 在線(xiàn)程池環(huán)境下使用Thread Specific Storage模式 153
10.4.2 內(nèi)存泄漏與偽內(nèi)存泄漏 153
10.5 Thread Specific Storage模式的可復(fù)用實(shí)現(xiàn)代碼 161
10.6 Java標(biāo)準(zhǔn)庫(kù)實(shí)例 161
10.7 相關(guān)模式 162
10.7.1 Immutable Object模式(第3章) 162
10.7.2 Proxy(代理)模式 162
10.7.3 Singleton(單例)模式 162
10.8 參考資源 162
第11章 Serial Thread Confinement(串行線(xiàn)程封閉)模式 163
11.1 Serial Thread Confinement模式簡(jiǎn)介 163
11.2 Serial Thread Confinement模式的架構(gòu) 163
11.3 Serial Thread Confinement模式實(shí)戰(zhàn)案例解析 166
11.4 Serial Thread Confinement模式的評(píng)價(jià)與實(shí)現(xiàn)考量 170
11.5 Serial Thread Confinement模式的可復(fù)用實(shí)現(xiàn)代碼 171
11.6 Java標(biāo)準(zhǔn)庫(kù)實(shí)例 176
11.7 相關(guān)模式 177
11.7.1 Immutable Object模式(第3章) 177
11.7.2 Promise模式(第6章) 177
11.7.3 Producer-Consumer模式(第7章) 177
11.7.4 Thread Specific Storage模式(第10章) 177
11.8 參考資源 177
第12章 Master-Slave(主仆)模式 178
12.1 Master-Slave模式簡(jiǎn)介 178
12.2 Master-Slave模式的架構(gòu) 178
12.3 Master-Slave模式實(shí)戰(zhàn)案例解析 180
12.4 Master-Slave模式的評(píng)價(jià)與實(shí)現(xiàn)考量 187
12.4.1 子任務(wù)處理結(jié)果的收集 188
12.4.2 Slave參與者實(shí)例的負(fù)載均衡與工作竊取 189
12.4.3 可靠性與異常處理 190
12.4.4 Slave線(xiàn)程的停止 190
12.5 Master-Slave模式的可復(fù)用實(shí)現(xiàn)代碼 190
12.6 Java標(biāo)準(zhǔn)庫(kù)實(shí)例 204
12.7 相關(guān)模式 204
12.7.1 Two-phase Termination模式(第5章) 204
12.7.2 Promise模式(第6章) 204
12.7.3 Strategy(策略)模式 204
12.7.4 Template(模板)模式 205
12.7.5 Factory Method(工廠(chǎng)方法)模式 205
12.8 參考資源 205
第13章 Pipeline(流水線(xiàn))模式 206
13.1 Pipeline模式簡(jiǎn)介 206
13.2 Pipeline模式的架構(gòu) 207
13.3 Pipeline模式實(shí)戰(zhàn)案例解析 212
13.4 Pipeline模式的評(píng)價(jià)與實(shí)現(xiàn)考量 219
13.4.1 Pipeline的深度 220
13.4.2 基于線(xiàn)程池的Pipe 220
13.4.3 錯(cuò)誤處理 223
13.4.4 可配置的Pipeline 224
13.5 Pipeline模式的可復(fù)用實(shí)現(xiàn)代碼 224
13.6 Java標(biāo)準(zhǔn)庫(kù)實(shí)例 236
13.7 相關(guān)模式 236
13.7.1 Serial Thread Confinement模式(第11章) 236
13.7.2 Master-Slave模式(第12章) 237
13.7.3 Composite模式 237
13.8 參考資源 237
第14章 Half-sync/Half-async(半同步/半異步)模式 238
14.1 Half-sync/Half-async模式簡(jiǎn)介 238
14.2 Half-sync/Half-async模式的架構(gòu) 238
14.3 Half-sync/Half-async模式實(shí)戰(zhàn)案例解析 240
14.4 Half-sync/Half-async模式的評(píng)價(jià)與實(shí)現(xiàn)考量 249
14.4.1 隊(duì)列積壓 250
14.4.2 避免同步任務(wù)層處理過(guò)慢 251
14.5 Half-sync/Half-async模式的可復(fù)用實(shí)現(xiàn)代碼 251
14.6 Java標(biāo)準(zhǔn)庫(kù)實(shí)例 256
14.7 相關(guān)模式 256
14.7.1 Two-phase Termination模式(第5章) 256
14.7.2 Producer-Consumer模式(第7章) 256
14.7.3 Active Object模式(第8章) 256
14.7.4 Thread Pool模式(第9章) 257
14.8 參考資源 257
第15章 模式語(yǔ)言 258
15.1 設(shè)計(jì)模式之間的聯(lián)系 258
15.2 Immutable Object模式 260
15.3 Guarded Suspension模式 261
15.4 Two-phase Termination模式 262
15.5 Promise模式 263
15.6 Producer-Consumer模式 264
15.7 Active Object模式 265
15.8 Thread Pool模式 266
15.9 Thread Specific Storage模式 267
15.10 Serial Thread Confinement模式 268
15.11 Master-Slave模式 269
15.12 Pipeline模式 270
15.13 Half-sync/Half-async模式 271
附錄A 本書(shū)常用UML圖指南 272
參考文獻(xiàn) 281

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) www.talentonion.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)