幫助中心 | 我的帳號 | 關於我們

Java併發編程實戰/華章專業開發者叢書

  • 作者:(美)蓋茨|譯者:童雲蘭
  • 出版社:機械工業
  • ISBN:9787111370048
  • 出版日期:2012/02/01
  • 裝幀:平裝
  • 頁數:293
人民幣:RMB 69 元      售價:
放入購物車
加入收藏夾

內容大鋼
    《Java併發編程實戰》深入淺出地介紹了Java線程和併發,是一本完美的Java併發參考手冊。書中從併發性和線程安全性的基本概念出發,介紹了如何使用類庫提供的基本併發構建塊,用於避免併發危險、構造線程安全的類及驗證線程安全的規則,如何將小的線程安全類組合成更大的線程安全類,如何利用線程來提高併發應用程序的吞吐量,如何識別可並行執行的任務,如何提高單線程子系統的響應性,如何確保併發程序執行預期任務,如何提高併發代碼的性能和可伸縮性等內容,最後介紹了一些高級主題,如顯式鎖、原子變數、非阻塞演算法以及如何開發自定義的同步工具類。
    《Java併發編程實戰》適合Java程序開發人員閱讀。本書由蓋茨(Brian Goetz)等著。

作者介紹
(美)蓋茨|譯者:童雲蘭

目錄
對本書的讚譽
譯者序
前言
第1章  簡介
  1.1  併發簡史
  1.2  線程的優勢
    1.2.1  發揮多處理器的強大能力
    1.2.2  建模的簡單性
    1.2.3  非同步事件的簡化處理
    1.2.4  響應更靈敏的用戶界面
  1.3  線程帶來的風險
    1.3.1  安全性問題
    1.3.2  活躍性問題
    1.3.3  性能問題
  1.4  線程無處不在
第一部分  基礎知識
第2章  線程安全性
  2.1  什麼是線程安全性
  2.2  原子性
    2.2.1  競態條件
    2.2.2  示例:延遲初始化中的競態條件
    2.2.3  複合操作
  2.3  加鎖機制
    2.3.1  內置鎖
    2.3.2  重入
  2.4  用鎖來保護狀態
  2.5  活躍性與性能
第3章  對象的共享
  3.1  可見性
    3.1.1  失效數據
    3.1.2  非原子的64位操作
    3.1.3  加鎖與可見性
    3.1.4  Volatile變數
  3.2  發布與逸出
  3.3  線程封閉
    3.3.1  Ad-hoc線程封閉
    3.3.2  棧封閉
    3.3.3  ThreadLocal類
  3.4  不變性
    3.4.1  Final域
    3.4.2  示例:使用Volatile類型來發布不可變對象
  3.5  安全發布
    3.5.1  不正確的發布:正確的對象被破壞
    3.5.2 不可變對象與初始化安全性
    3.5.3  安全發布的常用模式
    3.5.4  事實不可變對象
    3.5.5  可變對象
    3.5.6  安全地共享對象
第4章  對象的組合
  4.1  設計線程安全的類

    4.1.1  收集同步需求
    4.1.2  依賴狀態的操作
    4.1.3  狀態的所有權
  4.2  實例封閉
    4.2.1  Java監視器模式
    4.2.2  示例:車輛追蹤
  4.3  線程安全性的委託
    4.3.1  示例:基於委託的車輛追蹤器
    4.3.2  獨立的狀態變數
    4.3.3  當委託失效時
    4.3.4  發布底層的狀態變數
    4.3.5  示例:發布狀態的車輛追蹤器
  4.4  在現有的線程安全類中添加功能
    4.4.1  客戶端加鎖機制
    4.4.2  組合
  4.5  將同步策略文檔化
第5章  基礎構建模塊
  5.1  同步容器類
    5.1.1  同步容器類的問題
    5.1.2  迭代器與Concurrent-ModificationException
    5.1.3  隱藏迭代器
  5.2  併發容器
    5.2.1  ConcurrentHashMap
    5.2.2  額外的原子Map操作
    5.2.3  CopyOnWriteArrayList
  5.3  阻塞隊列和生產者-消費者模式
    5.3.1  示例:桌面搜索
    5.3.2  串列線程封閉
    5.3.3  雙端隊列與工作密取
  5.4  阻塞方法與中斷方法
  5.5  同步工具類
    5.5.1  閉鎖
    5.5.2  FutureTask
    5.5.3  信號量
    5.5.4  柵欄
  5.6  構建高效且可伸縮的結果緩存
第二部分  結構化併發應用程序
第6章  任務執行
  6.1  在線程中執行任務
    6.1.1  串列地執行任務
    6.1.2  顯式地為任務創建線程
    6.1.3  無限制創建線程的不足
  6.2  Executor框架
    6.2.1  示例:基於Executor的Web伺服器
    6.2.2  執行策略
    6.2.3  線程池
    6.2.4  Executor的生命周期
    6.2.5  延遲任務與周期任務
  6.3  找出可利用的並行性
    6.3.1  示例:串列的頁面渲染器

    6.3.2  攜帶結果的任務Callable與Future
    6.3.3  示例:使用Future實現頁面渲染器
    6.3.4  在異構任務並行化中存在的局限
    6.3.5  CompletionService:Executor與BlockingQueue
    6.3.6  示例:使用CompletionService實現頁面渲染器
    6.3.7  為任務設置時限
    6.3.8  示例:旅行預定門戶網站
  ……
第7章  取消與關閉
第8章  線程池的使用
第9章  圖形用戶界面應用程序
第三部分  活躍性、性能與測試
第10章  避免活躍性危險
第11章  性能與可伸縮性
第12章  併發程序的測試
第四部分  高級主題
第13章  顯式鎖
第14章  構建自定義的同步工具
第15章  原子變數與非阻塞同步機制
第16章  Java內存模型
附錄A  併發性標注
參考文獻

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032