各種鎖的概念

鎖的概念

可重入
不可重入
公平鎖
非公平鎖
鎖中斷
通過一個故事理解可重入鎖的機(jī)制 - 小勇DW3 - 博客園
獨(dú)占鎖、共享鎖、更新鎖,樂觀鎖、悲觀鎖 - gds通用軟件開發(fā)系統(tǒng) - 博客園
獨(dú)占鎖
共享鎖
樂觀鎖
悲觀鎖
排它鎖 (mysql中的行鎖 間隙鎖 next-key鎖)
更新鎖

死鎖

學(xué)過操作系統(tǒng)的朋友都知道產(chǎn)?死鎖必須具備以下四個條件:

  1. 互斥條件:該資源任意?個時刻只由?個線程占?。
  2. 請求與保持條件:?個進(jìn)程因請求資源?阻塞時,對已獲得的資源保持不放。
  3. 不剝奪條件:線程已獲得的資源在末使?完之前不能被其他線程強(qiáng)?剝奪,只有??使?完畢
    后才釋放資源。
  4. 循環(huán)等待條件:若?進(jìn)程之間形成?種頭尾相接的循環(huán)等待資源關(guān)系。
    我上?說了產(chǎn)?死鎖的四個必要條件,為了避免死鎖,我們只要破壞產(chǎn)?死鎖的四個條件中的其
    中?個就可以了?,F(xiàn)在我們來挨個分析?下:
  5. 破壞互斥條件 :這個條件我們沒有辦法破壞,因?yàn)槲覀?鎖本來就是想讓他們互斥的(臨界
    資源需要互斥訪問)。
  6. 破壞請求與保持條件 :?次性申請所有的資源。
  7. 破壞不剝奪條件 :占?部分資源的線程進(jìn)?步申請其他資源時,如果申請不到,可以主動釋
    放它占有的資源。
  8. 破壞循環(huán)等待條件 :靠按序申請資源來預(yù)防。按某?順序申請資源,釋放資源則反序釋放。
    破壞循環(huán)等待條件。

意向鎖
讀鎖
無鎖、偏向鎖、輕量級鎖、重量級鎖
偏向鎖、輕量級鎖、重量級鎖的升級以及區(qū)別_Java_stalary的博客-CSDN博客
監(jiān)視器鎖
經(jīng)典解釋監(jiān)視器和對象鎖Java馮立彬的博客-CSDN博客

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

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

  • 前言:本文不會深入不會深入!科普文,就是歸納一下平時我們遇到的各種鎖,這樣聽到也不會太懵逼。真正深入的還是要看書的...
    __y閱讀 1,242評論 0 4
  • 為什么要有分布式鎖 隨著架構(gòu)系統(tǒng)的演進(jìn),由純真的單機(jī)架構(gòu)到容器化編排的分布式架構(gòu),可以說是一個大型互聯(lián)網(wǎng)企業(yè)發(fā)展的...
    周若谷閱讀 525評論 0 0
  • 轉(zhuǎn)自公眾號Java建設(shè)者 ,作者cxuan Java 鎖分類 Java 中的鎖有很多,可以按照不同的功能、種類進(jìn)行...
    chen_chen_chen_閱讀 453評論 0 0
  • 公平鎖 簡單來講,先到先得,類似隊列。 非公平鎖 簡單來講,先到不一定先得,因?yàn)樗麄兪菗屨际健H绻麚屨际?,再采?..
    長孫俊明閱讀 250評論 0 0
  • 今天青石的票圈出鏡率最高的,莫過于張藝謀的新片終于定檔了。 一張滿溢著水墨風(fēng)的海報一次次的出現(xiàn)在票圈里,也就是老謀...
    青石電影閱讀 10,982評論 1 2

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