91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中鎖類型的介紹

發布時間:2020-06-28 13:24:58 來源:億速云 閱讀:134 作者:Leah 欄目:編程語言

這期內容當中小編將會給大家帶來有關Java中鎖類型的介紹,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

1、自旋鎖

自旋鎖顧名思義,它會等待一定時間(自旋),在這期中會什么都不做就是等資源被釋放,好處在于沒有了內核態用戶態切換的效率損失,但是如果它一直不能訪問到資源的話就會一直占用cpu資源,所以它會循環一段時間后進入阻塞狀態。

2、重量級鎖

synchronized就是重量級鎖的實現機制,搶不到資源的進程會進入阻塞狀態。

3、偏向鎖

顧名思義,它會偏向第一個訪問資源的進程,如果說只有一個進程執行同步代碼塊,那么就會上個偏向鎖,如果有其他線程搶占資源,那么就會升級為輕量級鎖。

4、輕量級鎖

偏向鎖升級之后就是輕量級鎖,鎖只可以升級而不可以降級。輕量級鎖中的其他進程會進入自選狀態,如果說自選失敗,就會升級會重量級鎖。

5、公平、非公正鎖

主要是指線程是否先來后到拿到鎖,synchronized是非公平的,而ReentrantLock默認非公平,可以設置為公平鎖。

6、悲觀鎖

總是假設最壞的情況,每次去拿數據的時候都認為別人會修改,所以每次在拿數據的時候都會上鎖,這樣別人想拿這個數據就會阻塞直到它拿到鎖(共享資源每次只給一個線程使用,其它線程阻塞,用完后再把資源轉讓給其它線程)。

傳統的關系型數據庫里邊就用到了很多這種鎖機制,比如行鎖,表鎖等,讀鎖,寫鎖等,都是在做操作之前先上鎖。Java中synchronized和ReentrantLock等獨占鎖就是悲觀鎖思想的實現。

7、樂觀鎖

總是假設最好的情況,每次去拿數據的時候都認為別人不會修改,所以不會上鎖,但是在更新的時候會判斷一下在此期間別人有沒有去更新這個數據,可以使用版本號機制(數據庫中)和CAS算法實現。

上述就是小編為大家分享的Java中鎖類型的介紹了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

文化| 大宁县| 崇信县| 河西区| 天祝| 思南县| 平定县| 柯坪县| 玛纳斯县| 华蓥市| 周口市| 靖宇县| 安溪县| 洛隆县| 建阳市| 湘乡市| 尼玛县| 灵武市| 白山市| 扬州市| 庆云县| 耒阳市| 鹿邑县| 县级市| 家居| 琼中| 同仁县| 西畴县| 乐至县| 错那县| 贵南县| 玉溪市| 台中县| 太白县| 宜良县| 福建省| 观塘区| 宜川县| 海安县| 内江市| 黔西|