首先,在講解所有內容之前,本人先來帶同學們回顧下執行緒和鎖的知識:
請**本人博文 —— 《【juc剖析】 執行緒 與 程序 重溫》
講到 併發,就不得不來講講鎖
因為鎖是解決併發的主要手段:
請**本人博文 —— 《【juc剖析】鎖 徹底解析》
在單執行緒的情況下,集合類只需要考慮效率問題
但是,在併發情況下,我們就不得不考慮執行緒安全問題了
因為,一般的集合類 不安全:
請**本人博文 —— 《【juc剖析】併發 與 集合》
在juc包中,有三個類十分重要,它們被稱為三大輔助類:
請**本人博文 —— 《【juc剖析】三大輔助類 詳解》
在有些特定的情況下,我們不得不將當前執行緒阻塞
例如:
這就需要使用到阻塞佇列來解決上述的需求:請**本人博文 —— 《【juc剖析】阻塞佇列 詳解》
在本人之前的博文《詳解 執行緒池》中曾講到了 通過executors類來建立執行緒池
那麼,接下來,本人就來剖析下executors類是如何 建立執行緒池的:
請**本人博文 —— 《【juc剖析】 執行緒池 深度剖析》
在上文的學習中,見到過很多函式型介面:
請**本人博文 —— 《【juc剖析】 函式式介面 詳解》
請**本人博文 —— 《詳解 stream流式計算》
請**本人博文 —— 《【juc剖析】 forkjoin 探析》
在我們學習springboot 以及 ajax 的時候,都了解過乙個十分強悍的機制 ——非同步**
在juc包下,也提供了封裝非同步**功能的類:
請**本人博文 —— 《【juc剖析】非同步** 與 completablefuture類 探析》
講到併發問題,相信同學們記得的不止synchronized這乙個關鍵字
還有乙個關鍵字非常重要 ——volatile關鍵字:
請**本人博文 —— 《【juc剖析】 jmm 與 volatile關鍵字 詳解》
說到volatile關鍵字,就不得不再來談一下單例模式:
請**本人博文 —— 《【juc剖析】多執行緒 與 單例模式》
在上文中,我們能夠看到:即使使用了 volatile關鍵字 ,還是因為沒有原子性,出現了執行緒安全問題
為了保證原子性,除了使用 synchronized 與 lock外,還有什麼方法呢?
答曰:atomic類
請**本人博文 —— 《【juc剖析】 cas 與 atomic類 詳解》
那麼,到此,juc的全部內容就講解完畢了!
框架的學習十分輕鬆,也因此很容易掌握
但是真正能讓我們理解框架的每乙個功能的基本實現步驟,還是得了解底層
希望本專欄能夠讓同學們有豐富的收穫!
最後,祝大家學業有成,面向大廠和前沿技術程式設計!
Java面試通關要點彙總集 基礎篇
封裝 將客觀事物抽象成類,從而達到對資料的控制。那些資訊可開放給外部,那些資訊只允許自己使用 繼承 子類可以使用父類所有的功能,並且可以在不改變父類的基礎上進行功能擴充套件。多型 多型的實現是通過重寫來實現,當子類重寫父類的方法後,父類指標根據不同子類賦給它的指標,動態呼叫子類的方法。2.final...
DSP day13 第七 八,九,十章總集篇
chapter 8 chapter 9 chapter 10 dspday9 仔細研究傳輸函式的幅度特性和相位特性,全通系統和線性相位系統 寫在前面 一定要會看各種符號的系統框圖!dspday10 數字濾波器結構 1.fir濾波器系統框圖結構 直接型,級聯型,線性相位fir結構 個人總結 看結構,記...
剖析NVIDIA Volta架構之指令篇
由於實驗結果不太好,現在已經開始往最底層的sass修改上努力了,鑑於nvidia官方出於大概是商業目的,關於sass的內容少之又少,因此只能零星地從各種 或者之類的東西裡尋找。前兩天發現了乙個文件,是關於volta架構的,裡面講了一些關於sass的內容,大致和 maxas 的介紹差不多但是更好懂,特...