TOP
月月讀書金,登入即領,滿600現折50!!
Java高併發核心編程‧卷2:多線程、鎖、JMM、JUC、高併發設計模式(簡體書)
滿額折

Java高併發核心編程‧卷2:多線程、鎖、JMM、JUC、高併發設計模式(簡體書)

商品資訊

人民幣定價:129 元
定價
:NT$ 774 元
優惠價
87673
海外經銷商無庫存,到貨日平均30天至45天
下單可得紅利積點 :20 點
商品簡介
名人推薦
目次

商品簡介

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

名人推薦

Java高併發編程基礎知識,多線程、鎖、JMM、JUC、高併發設計模式

目次

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

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 673
海外經銷商無庫存,到貨日平均30天至45天