看完這篇線程、線程鎖與線程池講解,面試隨便問!

前文:

單線程——多線程的開啟——線程鎖——線程同步工具——手寫連接池——連接池工具類。

一、線程

1.線程的概念

2.線程與進程的關(guān)系

3.定義:

區(qū)別:如上!??!

4.wait()和sleep()

5.線程的狀態(tài)及其他API

二、線程鎖

線程并發(fā)同步時,引入了鎖機制。

  1. 普通鎖機制:synchronized 修飾代碼塊與volatile 修飾成員變量
  1. Lock

!!共同點:都是從外面創(chuàng)建鎖類、再把鎖傳到線程里對變量對象賦值。

(1)重入鎖

(2)讀寫分離鎖

區(qū)別:

三、線程同步工具類

??!共同點:都是從外面創(chuàng)建工具類、再把工具類的參數(shù)傳到線程里面執(zhí)行。

  1. CountDowmLatch閉鎖:等待所有線程執(zhí)行完
  1. CyclicBarrier柵欄:等待所有線程達到后開啟
  1. Exchanger交換機:交流數(shù)據(jù)
  1. 信號量

(1)概念

(2)應(yīng)用場景一

(3)應(yīng)用場景二

四、線程池
  1. 為什么使用線程池
  1. 線程池的核心隊列

阻塞式隊列:只用于線程對象,主要用于引出線程池

  1. 手動創(chuàng)建線程池
  1. Executors工具創(chuàng)建線程

核心線程:0(臨時線程)、1(隊列)、N(隊列)

定時線程:

五、彩蛋圖
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容