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