⏳Java Concurrency: Java併發多執行緒(Multi Thread)學習地圖
Published in
Jul 19, 2020
基礎知識
- Java Concurrency #0: 預先知識
- Java Concurrency #1: Concurrency 基礎
- Java Concurrency #2: 什麼是鎖 — Lock
- Java Concurrency #3: 死鎖 — Deadlock
- Java Concurrency #4: 執行緒的生命週期 — Thread LifeCycle
互斥-確保資料安全
- Java Concurrency #5: JUC —鎖的基本類型 Lock & Condition & ReentrantLock
- Java Concurrency #6: JUC —讓鎖更有效率的讀寫鎖ReadWriteLock
- Java Concurrency #7: JUC —更進階的讀寫鎖 StampedLock
- Java Concurrency #9: JUC — 併發容器不需在自己加鎖 Blocking Collection
- Java Concurrency #10: JUC — 不加鎖也可以確保資料安全 Atomic Class
管理&監控 — 不讓執行緒像野馬一樣亂竄
- Java Concurrency #11: JUC — 讓多個Thread進入Crtitical section Semaphore
- Java Concurrency #12: JUC — 別讓Thread們失控 Executor & 線程池
同步 — 將結果集合起來
- Java Concurrency #13: Thread Join 讓執行緒的執行結果整合起來
- Java Concurrency #14: JUC — CountDownLatch & CyclicBarrier讓Thread們步調一致
- Java Concurrency #15: JUC — 得到Thread的執行結果 FutureTask & CompletableFuture
Concurrency模型-上面介紹完了基本物件與概念,接下來就是一些經典的Multi Thread設計方法,如果熟悉這些方法那可以避免許多Concurrency的問題
- Java Concurrency: Thread-Per-Message,最基本的執行緒使用方法
- Java Concurrency: Worker Thread,執行緒池的基本模式
- Java Concurrency: Producer and Consumer,生產者消費者模式,解耦合的極致
- Java Concurrency: Immutability,用最基礎的OO特性保護資源
- Java Concurrency: Copy-on-Write,利用延遲確保讀的效率
- Java Concurrency: Thread Local, 沒有共享就不會有問題 ThreadLocal