●章 走入並行世界 1
●1.1 何去何從的並行計算 1
●1.1.1 忘掉那該死的並行 2
●1.1.2 可怕的現實:摩爾定律的失效 4
●1.1.3 柳暗花明:不斷地前進 5
●1.1.4 光明或是黑暗 6
●1.2 你必須知道的幾個概念 6
●1.2.1 同步(Synchronous)和異步(Asynchronous) 7
●1.2.2 並發(Concurrency)和並行(Parallelism) 8
●1.2.3 臨界區 9
●1.2.4 阻塞(Blocking)和非阻塞(Non-Blocking) 9
●1.2.5 死鎖(Deadlock)、饑餓(Starvation)和活鎖(Livelock) 9
●1.3 並發級別 11
●1.3.1 阻塞(Blocking) 11
●1.3.2 無饑餓(Starvation-Free) 11
●1.3.3 無障礙(Obstruction-Free) 12
●1.3.4 無鎖(Lock-Free) 12
●1.3.5 無等待(Wait-Free) 13
●1.4 有關並行的兩個重要定律 13
●1.4.1 Amdahl定律 13......
內容簡介
在過去單核CPU時代,單任務在一個時間點隻能執行單一程序,隨著多核CPU的發展,並行程序開發就顯得尤為重要。
本書主要介紹基於Java的並行程序設計基礎、思路、方法和實戰。靠前,立足於並發程序基礎,詳細介紹Java中進行並行程序設計的基本方法。第二,進一步詳細介紹JDK中對並行程序的強大支持,幫助讀者快速、穩健地進行並行程序開發。第三,詳細討論有關“鎖”的優化和提高並行程序性能級別的方法和思路。第四,介紹並行的基本設計模式及Java 8對並行程序的支持和改進。第五,介紹高並發框架Akka的使用方法。很後,詳細介紹並行程序的調試方法。