注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)Java高并發(fā)核心編程 卷2:多線(xiàn)程、鎖、JMM、JUC、高并發(fā)設(shè)計(jì)模式

Java高并發(fā)核心編程 卷2:多線(xiàn)程、鎖、JMM、JUC、高并發(fā)設(shè)計(jì)模式

Java高并發(fā)核心編程 卷2:多線(xiàn)程、鎖、JMM、JUC、高并發(fā)設(shè)計(jì)模式

定 價(jià):¥129.00

作 者: 尼恩 著
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

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


ISBN: 9787111679882 出版時(shí)間: 2021-06-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 484 字?jǐn)?shù):  

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

  本書(shū)聚焦Java并發(fā)編程基礎(chǔ)知識(shí),介紹了Java多線(xiàn)程、線(xiàn)程池、內(nèi)置鎖、JMM、CAS、JUC、高并發(fā)設(shè)計(jì)模式等并發(fā)編程方面的核心原理和實(shí)戰(zhàn)知識(shí)。 本書(shū)共分為10章。第1~2章淺顯易懂地剖析多線(xiàn)程、線(xiàn)程池的核心原理和實(shí)戰(zhàn)使用,揭秘線(xiàn)程安全問(wèn)題和Java內(nèi)置鎖的核心原理;第3~4章細(xì)致地講解CAS原理與JUC原子類(lèi)、JMM的核心原理,揭秘CAS操作的弊端和兩類(lèi)規(guī)避措施、解密Java如何內(nèi)存可見(jiàn)性和volatile關(guān)鍵字的底層知識(shí);第5章細(xì)致地介紹JUC顯示鎖的原理和各種顯示鎖的使用;第6章圖文并茂、深入淺出地闡述JUC高并發(fā)的基礎(chǔ)設(shè)施:AQS抽象同步器核心原理;第7章介紹JUC容器類(lèi);第8~10章介紹常見(jiàn)的Java高并發(fā)設(shè)計(jì)模式的原理和使用。

作者簡(jiǎn)介

  作者簡(jiǎn)介 尼恩,中南大學(xué)碩士,架構(gòu)師,先后在華為、神州數(shù)碼從事技術(shù)研發(fā)工作,專(zhuān)注于高性能Web平臺(tái)、高性能通信、高性能搜索、數(shù)據(jù)挖掘等領(lǐng)域的架構(gòu)設(shè)計(jì)和分析工作。

圖書(shū)目錄

目 錄
前言
自序
第1章 多線(xiàn)程原理與實(shí)戰(zhàn) 1
1.1 兩個(gè)技術(shù)面試故事 1
1.2 無(wú)處不在的進(jìn)程和線(xiàn)程 2
1.2.1 進(jìn)程的基本原理 3
1.2.2 線(xiàn)程的基本原理 5
1.2.3 進(jìn)程與線(xiàn)程的區(qū)別 8
1.3 創(chuàng)建線(xiàn)程的4種方法 8
1.3.1 Thread類(lèi)詳解 8
1.3.2 創(chuàng)建一個(gè)空線(xiàn)程 10
1.3.3 線(xiàn)程創(chuàng)建方法一:繼承Thread類(lèi)創(chuàng)建線(xiàn)程類(lèi) 12
1.3.4 線(xiàn)程創(chuàng)建方法二:實(shí)現(xiàn)Runnable接口創(chuàng)建線(xiàn)程目標(biāo)類(lèi) 13
1.3.5 優(yōu)雅創(chuàng)建Runnable線(xiàn)程目標(biāo)類(lèi)的兩種方式 16
1.3.6 通過(guò)實(shí)現(xiàn)Runnable接口的方式創(chuàng)建線(xiàn)程目標(biāo)類(lèi)的優(yōu)缺點(diǎn) 18
1.3.7 線(xiàn)程創(chuàng)建方法三:使用Callable和FutureTask創(chuàng)建線(xiàn)程 23
1.3.8 線(xiàn)程創(chuàng)建方法四:通過(guò)線(xiàn)程池創(chuàng)建線(xiàn)程 28
1.4 線(xiàn)程的核心原理 31
1.4.1 線(xiàn)程的調(diào)度與時(shí)間片 31
1.4.2 線(xiàn)程的優(yōu)先級(jí) 32
1.4.3 線(xiàn)程的生命周期 35
1.4.4 一個(gè)線(xiàn)程狀態(tài)的簡(jiǎn)單演示案例 37
1.4.5 使用Jstack工具查看線(xiàn)程狀態(tài) 40
1.5 線(xiàn)程的基本操作 41
1.5.1 線(xiàn)程名稱(chēng)的設(shè)置和獲取 41
1.5.2 線(xiàn)程的sleep操作 43
1.5.3 線(xiàn)程的interrupt操作 45
1.5.4 線(xiàn)程的join操作 48
1.5.5 線(xiàn)程的yield操作 53
1.5.6 線(xiàn)程的daemon操作 55
1.5.7 線(xiàn)程狀態(tài)總結(jié) 61
1.6 線(xiàn)程池原理與實(shí)戰(zhàn) 62
1.6.1 JUC的線(xiàn)程池架構(gòu) 63
1.6.2 Executors的4種快捷創(chuàng)建線(xiàn)程池的方法 65
1.6.3 線(xiàn)程池的標(biāo)準(zhǔn)創(chuàng)建方式 72
1.6.4 向線(xiàn)程池提交任務(wù)的兩種方式 73
1.6.5 線(xiàn)程池的任務(wù)調(diào)度流程 77
1.6.6 ThreadFactory(線(xiàn)程工廠(chǎng)) 79
1.6.7 任務(wù)阻塞隊(duì)列 81
1.6.8 調(diào)度器的鉤子方法 82
1.6.9 線(xiàn)程池的拒絕策略 84
1.6.10 線(xiàn)程池的優(yōu)雅關(guān)閉 87
1.6.11 Executors快捷創(chuàng)建線(xiàn)程池的潛在問(wèn)題 93
1.7 確定線(xiàn)程池的線(xiàn)程數(shù) 97
1.7.1 按照任務(wù)類(lèi)型對(duì)線(xiàn)程池進(jìn)行分類(lèi) 97
1.7.2 為IO密集型任務(wù)確定線(xiàn)程數(shù) 98
1.7.3 為CPU密集型任務(wù)確定線(xiàn)程數(shù) 100
1.7.4 為混合型任務(wù)確定線(xiàn)程數(shù) 101
1.8 ThreadLocal原理與實(shí)戰(zhàn) 104
1.8.1 ThreadLocal的基本使用 104
1.8.2 ThreadLocal的使用場(chǎng)景 107
1.8.3 使用ThreadLocal進(jìn)行線(xiàn)程隔離 108
1.8.4 使用ThreadLocal進(jìn)行跨函數(shù)數(shù)據(jù)傳遞 109
1.8.5 ThreadLocal內(nèi)部結(jié)構(gòu)演進(jìn) 110
1.8.6 ThreadLocal源碼分析 111
1.8.7 ThreadLocalMap源碼分析 114
1.8.8 ThreadLocal綜合使用案例 119
第2章 Java內(nèi)置鎖的核心原理 123
2.1 線(xiàn)程安全問(wèn)題 123
2.1.1 自增運(yùn)算不是線(xiàn)程安全的 123
2.1.2 臨界區(qū)資源與臨界區(qū)代碼段 126
2.2 synchronized關(guān)鍵字 127
2.2.1 synchronized同步方法 127
2.2.2 synchronized同步塊 128
2.2.3 靜態(tài)的同步方法 130
2.3 生產(chǎn)者-消費(fèi)者問(wèn)題 131
2.3.1 生產(chǎn)者-消費(fèi)者模式 131
2.3.2 一個(gè)線(xiàn)程不安全的實(shí)現(xiàn)版本 132
2.3.3 一個(gè)線(xiàn)程安全的實(shí)現(xiàn)版本 139
2.4 Java對(duì)象結(jié)構(gòu)與內(nèi)置鎖 140
2.4.1 Java對(duì)象結(jié)構(gòu) 141
2.4.2 Mark Word的結(jié)構(gòu)信息 143
2.4.3 使用JOL工具查看對(duì)象的布局 145
2.4.4 大小端問(wèn)題 149
2.4.5 無(wú)鎖、偏向鎖、輕量級(jí)鎖和重量級(jí)鎖 150
2.5 偏向鎖的原理與實(shí)戰(zhàn) 152
2.5.1 偏向鎖的核心原理 152
2.5.2 偏向鎖的演示案例 152
2.5.3 偏向鎖的膨脹和撤銷(xiāo) 156
2.6 輕量級(jí)鎖的原理與實(shí)戰(zhàn) 157
2.6.1 輕量級(jí)鎖的核心原理 157
2.6.2 輕量級(jí)鎖的演示案例 158
2.6.3 輕量級(jí)鎖的分類(lèi) 161
2.6.4 輕量級(jí)鎖的膨脹 162
2.7 重量級(jí)鎖的原理與實(shí)戰(zhàn) 162
2.7.1 重量級(jí)鎖的核心原理 162
2.7.2 重量級(jí)鎖的開(kāi)銷(xiāo) 165
2.7.3 重量級(jí)鎖的演示案例 166
2.8 偏向鎖、輕量級(jí)鎖與重量級(jí)鎖的對(duì)比 169
2.9 線(xiàn)程間通信 170
2.9.1 線(xiàn)程間通信的定義 170
2.9.2 低效的線(xiàn)程輪詢(xún) 170
2.9.3 wait方法和notify方法的原理 171
2.9.4 “等待-通知”通信模式演示案例 174
2.9.5 生產(chǎn)者-消費(fèi)者之間的線(xiàn)程間通信 177
2.9.6 需要在synchronized同步塊的內(nèi)部使用wait和notify 180
第3章 CAS原理與JUC原子類(lèi) 182

......



本目錄推薦

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