在過去的時間中,我寫過Java多線程與併發的整個系列。
爲了方便大家的閱讀,也爲了讓知識更系統化,這裏我單獨把Java多線程與併發的整個系列一併羅列於此,希望對有用的人有用,也希望能幫助到更多的人。
以下爲整個目錄,希望大家喜歡!
Java多線程系列(一):一分鐘瞭解Java併發編程的核心技能
這一篇文章呢,我認爲比較重要,學習任何一個東西,首先你得學會建立完整的技能框架,建立好了框架纔開始學習,這樣事半功倍。
主要講了Java多線程與併發相關涉及的整體技能框架,包含如下五大點:
多線程需要學習哪些技能
線程池涉及的技術
線程鎖需要掌握的技術
併發工具類需要掌握的技術
併發容器需要掌握的技術
Java多線程系列(二):線程的五大狀態,以及線程之間的通信與協作
主要講了Java線程相關的4點:
多線程的基本概念
線程的生命週期
線程的調度策略
線程之間的通信與協作
Java多線程系列(三):Java線程池的使用方式,核心運行原理、以及注意事項
這篇我主要談到Java線程池相關的4點:
爲什麼需要線程池
線程池的處理流程
線程池相關的核心參數
線程池使用的注意事項
Java多線程系列(四):4種常用Java線程鎖的特點,性能比較、使用場景
主要講了Java 4大常用的線程鎖,整體包含如下4點:
多線程的緣由
多線程併發面臨的問題
4種Java線程鎖(線程同步):synchronized、ReentrantLock等
Java線程鎖總結
Java多線程系列(五) :線程池的架構實現、大小配置、以及四種線程池使用
完整的講解了Java 線程池的6大方面:
爲什麼需要線程池
線程池的優點
線程池的風險
線程池的實現原理
配置線程池大小配置
Java提供的四種線程池實現
Java多線程系列(六) :詳解Java多線程之Synchronized的底層實現
Synchronized經常是面試必考的了,需要重點掌握,這篇主要講了以下五點:
Synchronized介紹
Synchronized的使用
Synchronized的底層實現原理
Synchronized的鎖升級順序
偏向鎖、輕量級鎖、重量級鎖的優劣勢比較
Java多線程系列(七) :併發容器的原理,7大併發容器詳解、及使用場景
並容器也經常是面試必考的,這篇主要講了以下四大點:
什麼是同步容器
什麼是併發容器
常見的7大並容器介紹:concurrenthashmap copyonwritearraylist等
ConcurrentHashMap的底層實現機制
Java多線程系列(八) :深入探討ConcurrentHashMap的實現原理(JDK1.7和JDK1.8)
concurrenthashmap面試必考了,這篇重點詳解了:
哈希表以及應用場景
ConcurrentHashMap與HashMap等的區別
JDK1.7版本的CurrentHashMap的實現原理
JDK1.8版本的CurrentHashMap的實現原理
Java多線程系列(九) :4大併發工具類的功能、原理、以及應用場景
主要講了四大Java常用的併發工具類:
CountDownLatch
CyclicBarrier
Semaphore
Exchanger
Java多線程系列(十) :全面剖析Java併發編程之AQS的核心實現
AQS在整個Java併發編程的重要性是非常高的,需要重點掌握,本篇詳解了以下四大點:
AQS的介紹
AQS的數據模型
AQS的資源共享方式
AQS的鎖獲取與釋放原理
Java多線程系列(十一) :ReentrantReadWriteLock的實現原理與鎖獲取
ReentrantReadWriteLock讀寫鎖,主要講了以下幾點:
ReentrantReadWriteLock簡介
ReentrantReadWriteLock特性
ReentrantReadWriteLock的主要成員和結構圖
ReentrantReadWriteLock的核心實現
ReentrantReadWriteLock的鎖獲取與釋放
順便說一下,由於Java多線程與併發涉及的內容還是非常廣。
因此對於本文,今後有新的內容,我會在對這個系列進行整理補充和更改。
END
轉發+關注後 文檔點擊這裏獲取