課程介紹
課程來自于 極客時間專欄課-王寶令-Java并發(fā)編程實戰(zhàn)(完結)
專欄共 45 期,分為 5 大模塊。
1. 并發(fā)理論基礎
這個模塊主要介紹并發(fā)編程相關的概念和理論。但不會死板地堆疊結論,而是關注具體概念和理論的產生背景,挖掘它們背后的邏輯關系,發(fā)現(xiàn)核心矛盾并尋找解決方案。比如,深度認識 Java 內存模型、死鎖產生的原因和解決方案、線程間的協(xié)作機制,等等。
2. 并發(fā)工具類
這個模塊主要探討 Java SDK 里的并發(fā)工具類。這些工具類大部分都是基于管程實現(xiàn)的,所以這里會首先介紹隱藏在并發(fā)包中的管程及其使用。緊接著還會為你詳細解讀信號量、讀寫鎖、CountDownLatch 和 CyclicBarrier,以及并發(fā)編程的三個核心問題“分工”“同步”“互斥”相關的技術內容。
3. 并發(fā)設計模式
并發(fā)設計模式是解決并發(fā)問題的最佳實踐。這個模塊將會介紹 9 種常見的設計模式。其中,前 3 種設計模式的核心思想是避免共享變量,從而避免并發(fā)問題;后面 6 種設計模式則都屬于典型的分工模式。
4. 案例分析
這個模塊著重分析 4 個經典的開源框架是如何處理并發(fā)問題的,包括高性能限流器 Guava RateLimiter、高性能網絡應用框架 Netty、高性能隊列 Disruptor、高性能數(shù)據(jù)庫連接池 HiKariCP,希望能夠幫你融會貫通相關知識點,并從實戰(zhàn)場景中思考問題的最優(yōu)解。
5. 其他并發(fā)模型
并發(fā)問題是一個通用問題,Java 語言解決并發(fā)問題采用的是共享內存模型,但這個模型并不是解決并發(fā)問題唯一的模型。這個模塊將會介紹共享內存模型之外的模型,主要有 Actor 模型、軟件事務內存、協(xié)程和 CSP 模型。
文件目錄
01-開篇詞 (1講)
02-學習攻略 (1講)
03-第一部分:并發(fā)理論基礎 (13講)
04-第二部分:并發(fā)工具類 (14講)
05-第三部分:并發(fā)設計模式 (10講)
06-第四部分:案例分析 (4講)
07-第五部分:其他并發(fā)模型 (4講)
08-結束語 (1講)