[ 收藏 ] [ 繁体中文 ]  
臺灣貨到付款、ATM、超商、信用卡PAYPAL付款,4-7個工作日送達,999元臺幣免運費   在線留言 商品價格為新臺幣 
首頁 電影 連續劇 音樂 圖書 女裝 男裝 童裝 內衣 百貨家居 包包 女鞋 男鞋 童鞋 計算機周邊

商品搜索

 类 别:
 关键字:
    

商品分类

  • 新类目

     管理
     投资理财
     经济
     社会科学
  • Java並發實現原理 JDK源碼剖析
    該商品所屬分類:圖書 -> 科技
    【市場價】
    486-704
    【優惠價】
    304-440
    【作者】 餘春龍 
    【出版社】電子工業出版社 
    【ISBN】9787121379727
    【折扣說明】一次購物滿999元台幣免運費+贈品
    一次購物滿2000元台幣95折+免運費+贈品
    一次購物滿3000元台幣92折+免運費+贈品
    一次購物滿4000元台幣88折+免運費+贈品
    【本期贈品】①優質無紡布環保袋,做工棒!②品牌簽字筆 ③品牌手帕紙巾
    版本正版全新電子版PDF檔
    您已选择: 正版全新
    溫馨提示:如果有多種選項,請先選擇再點擊加入購物車。
    *. 電子圖書價格是0.69折,例如了得網價格是100元,電子書pdf的價格則是69元。
    *. 購買電子書不支持貨到付款,購買時選擇atm或者超商、PayPal付款。付款後1-24小時內通過郵件傳輸給您。
    *. 如果收到的電子書不滿意,可以聯絡我們退款。謝謝。
    內容介紹



    出版社:電子工業出版社
    ISBN:9787121379727
    商品編碼:67267727369

    品牌:文軒
    出版時間:2020-04-01
    代碼:89

    作者:餘春龍

        
        
    "
    作  者:餘春龍 著
    /
    定  價:89
    /
    出 版 社:電子工業出版社
    /
    出版日期:2020年04月01日
    /
    頁  數:246
    /
    裝  幀:平裝
    /
    ISBN:9787121379727
    /
    目錄
    ●第1章 多線程基礎 / 1
    1.1 線程的優雅關閉 / 1
    1.1.1 stop與destory函數 / 1
    1.1.2 守護線程 / 1
    1.1.3 設置關閉的標志位 / 2
    1.2 InterruptedException與interrupt()函數 / 3
    1.2.1 什麼情況下會拋出Interrupted異常 / 3
    1.2.2 輕量級阻塞與重量級阻塞 / 4
    1.2.3 t.isInterrupted()與Thread.interrupted()的區別 / 5
    1.3 synchronized關鍵字 / 5
    1.3.1 鎖的對像是什麼 / 5
    1.3.2 鎖的本質是什麼 / 6
    1.3.3 synchronized實現原理 / 7
    1.4 wait與notify / 7
    1.4.1 生產者-消費者模型 / 7
    1.4.2 為什麼必須和synchornized一起使用 / 8
    1.4.3 為什麼wait()的時候必須釋放鎖 / 9
    1.4.4 wait()與notify()的問題 / 10
    1.5 volatile關鍵字 / 11
    1.5.1 64位寫入的原子性(Half Write) / 11
    1.5.2 內存可見性 / 11
    1.5.3 重排序:DCL問題 / 12
    1.6 JMM與happen-before / 13
    1.6.1 為什麼會存在“內存可見性”問題 / 13
    1.6.2 重排序與內存可見性的關繫 / 15
    1.6.3 as-if-serial語義 / 16
    1.6.4 happen-before是什麼 / 17
    1.6.5 happen-before的傳遞性 / 18
    1.6.6 C++中的volatile關鍵字 / 19
    1.6.7 JSR-133對volatile語義的增強 / 20
    1.7 內存屏障 / 20
    1.7.1 Linux中的內存屏障 / 21
    1.7.2 JDK中的內存屏障 / 23
    1.7.3 volatile實現原理 / 24
    1.8 final關鍵字 / 25
    1.8.1 構造函數溢出問題 / 25
    1.8.2 final的happen-before語義 / 26
    1.8.3 happen-before規則總結 / 26
    1.9 綜合應用:無鎖編程 / 27
    1.9.1 一寫一讀的無鎖隊列:內存屏障 / 27
    1.9.2 一寫多讀的無鎖隊列:volatile關鍵字 / 27
    1.9.3 多寫多讀的無鎖隊列:CAS / 28
    1.9.4 無鎖棧 / 28
    1.9.5 無鎖鏈表 / 28
    第2章 Atomic類 / 29
    2.1 AtomicInteger和AtomicLong / 29
    2.1.1 悲觀鎖與樂觀鎖 / 31
    2.1.2 Unsafe 的CAS詳解 / 31
    2.1.3 自旋與阻塞 / 32
    2.2 AtomicBoolean和AtomicReference / 33
    2.2.1 為什麼需要AtomicBoolean / 33
    2.2.2 如何支持boolean和double類型 / 33
    2.3 AtomicStampedReference和AtomicMarkable Reference / 34
    2.3.1 ABA問題與解決辦法 / 34
    2.3.2 為什麼沒有AtomicStampedInteger或AtomictStampedLong / 35
    2.3.3 AtomicMarkableReference / 36
    2.4 AtomicIntegerFieldUpdater、AtomicLongFieldUpdater和AtomicReferenceField Updater / 37
    2.4.1 為什麼需要AtomicXXXFieldUpdater / 37
    2.4.2 條件 / 38
    2.5 AtomicIntegerArray、AtomicLongArray和
    AtomicReferenceArray / 38
    2.5.1 使用方式 / 38
    2.5.2 實現原理 / 39
    2.6 Striped64與LongAdder / 40
    2.6.1 LongAdder原理 / 40
    2.6.2 最終一致性 / 41
    2.6.3 偽共享與緩存行填充 / 42
    2.6.4 LongAdder核心實現 / 43
    2.6.5 LongAccumulator / 47
    2.6.6 DoubleAdder與DoubleAccumulator / 47
    第3章 Lock與Condition / 49
    3.1 互斥鎖 / 49
    3.1.1 鎖的可重入性 / 49
    3.1.2 類繼承層次 / 49
    3.1.3 鎖的公平性vs.非公平性 / 51
    3.1.4 鎖實現的基本原理 / 51
    3.1.5 公平與非公平的lock()實現差異 / 53
    3.1.6 阻塞隊列與喚醒機制 / 55
    3.1.7 unlock()實現分析 / 58
    3.1.8 lockInterruptibly()實現分析 / 59
    3.1.9 tryLock()實現分析 / 60
    3.2 讀寫鎖 / 60
    3.2.1 類繼承層次 / 60
    3.2.2 讀寫鎖實現的基本原理 / 61
    3.2.3 AQS的兩對模板方法 / 62
    3.2.4 WriteLock公平vs.非公平實現 / 65
    3.2.5 ReadLock公平vs.非公平實現 / 67
    3.3 Condition / 68
    3.3.1 Condition與Lock的關繫 / 68
    3.3.2 Condition的使用場景 / 69
    3.3.3 Condition實現原理 / 71
    3.3.4 await()實現分析 / 72
    3.3.5 awaitUninterruptibly()實現分析 / 73
    3.3.6 notify()實現分析 / 74
    3.4 StampedLock / 75
    3.4.1 為什麼引入StampedLock / 75
    3.4.2 使用場景 / 75
    3.4.3 “樂觀讀”的實現原理 / 77
    3.4.4 悲觀讀/寫:“阻塞”與“自旋”策略實現差異 / 78
    第4章 同步工具類 / 83
    4.1 Semaphore / 83
    4.2 CountDownLatch / 84
    4.2.1 CountDownLatch使用場景 / 84
    4.2.2 await()實現分析 / 85
    4.2.3 countDown()實現分析 / 85
    4.3 CyclicBarrier / 86
    4.3.1 CyclicBarrier使用場景 / 86
    4.3.2 CyclicBarrier實現原理 / 87
    4.4 Exchanger / 90
    4.4.1 Exchanger使用場景 / 90
    4.4.2 Exchanger 實現原理 / 91
    4.4.3 exchange(V x)實現分析 / 92
    4.5 Phaser / 94
    4.5.1 用Phaser替代CyclicBarrier和CountDownLatch / 94
    4.5.2 Phaser新特性 / 95
    4.5.3 state變量解析 / 96
    4.5.4 阻塞與喚醒(Treiber Stack) / 98
    4.5.5 arrive()函數分析 / 99
    4.5.6 awaitAdvance()函數分析 / 101
    第5章 並發容器 / 104
    5.1 BlockingQueue / 104
    5.1.1 ArrayBlockingQueue / 105
    5.1.2 LinkedBlockingQueue / 106
    5.1.3 PriorityBlockingQueue / 109
    5.1.4 DelayQueue / 111
    5.1.5 SynchronousQueue / 113
    5.2 BlockingDeque / 121
    5.3 CopyOnWrite / 123
    5.3.1 CopyOnWriteArrayList / 123
    5.3.2 CopyOnWriteArraySet / 124
    5.4 ConcurrentLinkedQueue/ Deque / 125
    5.5 ConcurrentHashMap / 130
    5.5.1 JDK 7中的實現方式 / 130
    5.5.2 JDK 8中的實現方式 / 138
    5.6 ConcurrentSkipListMap/Set / 152
    5.6.1 ConcurrentSkipListMap / 153
    5.6.2 ConcurrentSkipListSet / 162
    第6章 線程池與Future / 163
    6.1 線程池的實現原理 / 163
    6.2 線程池的類繼承體繫 / 164
    6.3 ThreadPoolExecutor / 165
    6.3.1 核心數據結構 / 165
    6.3.2 核心配置參數解釋 / 165
    6.3.3 線程池的優雅關閉 / 167
    6.3.4 任務的提交過程分析 / 172
    6.3.5 任務的執行過程分析 / 174
    6.3.6 線程池的4種拒絕策略 / 179
    6.4 Callable與Future / 180
    6.5 ScheduledThreadPool Executor / 183
    6.5.1 延遲執行和周期性執行的原理 / 184
    6.5.2 延遲執行 / 184
    6.5.3 周期性執行 / 185
    6.6 Executors工具類 / 188
    第7章 ForkJoinPool / 190
    7.1 ForkJoinPool用法 / 190
    7.2 核心數據結構 / 193
    7.3 工作竊取隊列 / 195
    7.4 ForkJoinPool狀態控制 / 198
    7.4.1 狀態變量ctl解析 / 198
    7.4.2 阻塞棧Treiber Stack / 200
    7.4.3 ctl變量的初始值 / 201
    7.4.4 ForkJoinWorkerThread狀態與個數分析 / 201
    7.5 Worker線程的阻塞-喚醒機制 / 202
    7.5.1 阻塞-入棧 / 202
    7.5.2 喚醒-出棧 / 204
    7.6 任務的提交過程分析 / 205
    7.6.1 內部提交任務pushTask / 206
    7.6.2 外部提交任務
    addSubmission / 206
    7.7 工作竊取算法:任務的執行過程分析 / 207
    7.7.1 順序鎖 SeqLock / 209
    7.7.2 scanGuard解析 / 210
    7.8 ForkJoinTask的fork/join / 212
    7.8.1 fork / 213
    7.8.2 join的層層嵌套 / 213
    7.9 ForkJoinPool的優雅關閉 / 222
    7.9.1 關鍵的terminate變量 / 222
    7.9.2 shutdown()與shutdownNow()的區別 / 223
    第8章 CompletableFuture / 226
    8.1 CompletableFuture用法 / 226
    8.1.1 最簡單的用法 / 226
    8.1.2 提交任務:runAsync與supplyAsync / 226
    8.1.3 鏈式的CompletableFuture:thenRun、thenAccept和thenApply / 227
    8.1.4 CompletableFuture的組合:thenCompose與thenCombine / 229
    8.1.5 任意個CompletableFuture的組合 / 231
    8.2 四種任務原型 / 233
    8.3 CompletionStage接口 / 233
    8.4 CompletableFuture內部原理 / 234
    8.4.1 CompletableFuture的構造:ForkJoinPool / 234
    8.4.2 任務類型的適配 / 235
    8.4.3 任務的鏈式執行過程分析 / 237
    8.4.4 thenApply與thenApplyAsync的區別 / 241
    8.5 任務的網狀執行:有向無環圖 / 242
    8.6 allOf內部的計算圖分析 / 244
    內容簡介
    本書全面而繫統地剖析了Java Concurrent包中的每一個部分,對並發的實現原理進行了深刻的探討。全書分為8章,第1章從最基礎的多線程知識講起,理清多線程中容易誤解的知識點,探究背後的原理,包括內存重排序、happen-before、內存屏障等;第2~8章,從簡單到復雜,逐個剖析Concurrent包的每個部分,包括原子類、鎖、同步工具類、並發容器、線程池、ForkJoinPool、CompletableFuture共7個部分。本書遵循層層遞進的邏輯,後一章建立在前一章的知識點基礎之上,建議讀者由淺入深,逐步深入閱讀。本書適合有一定Java開發經驗的工程師、架構師閱讀。通過本書,讀者可以對多線程編程形成一個“深刻而直觀”的認識,而不是再僅僅停留在概念和理論層面。



    "
     
    網友評論  我們期待著您對此商品發表評論
     
    相關商品
    【同作者商品】
    餘春龍
      本網站暫時沒有該作者的其它商品。
    有該作者的商品通知您嗎?
    請選擇作者:
    餘春龍
    您的Email地址
    在線留言 商品價格為新臺幣
    關於我們 送貨時間 安全付款 會員登入 加入會員 我的帳戶 網站聯盟
    DVD 連續劇 Copyright © 2024, Digital 了得網 Co., Ltd.
    返回頂部