JDK1 8版本,java併發框架支援鎖包括

2021-07-28 15:16:16 字數 522 閱讀 4083

1、自旋鎖,自旋,jvm預設是10次,由jvm自己控制,for去爭取鎖

2、阻塞鎖 被阻塞的執行緒,不會爭奪鎖

3、可重入鎖,多次進入改鎖的域

4、讀寫鎖

5、互斥鎖,鎖本身就是互斥的

6、悲觀鎖,不相信這裡是安全的,必須全部上鎖

7、樂觀鎖,相信這裡是安全的

8、公平鎖,有優先順序的鎖

9、非公平鎖,無優先順序的鎖

10、偏向鎖,無競爭不鎖,有競爭掛起,轉為輕量鎖

11、物件鎖,鎖住物件

12、執行緒鎖

13、鎖粗化  ,多鎖變成乙個,自己處理

14、輕量級鎖 ,cas實現

15、鎖消除 ,偏向鎖就是鎖消除的一種

16、鎖膨脹 , jvm實現,鎖粗化

17、訊號量,使用阻塞鎖實現的一種策略

18、排他鎖(不包含),x鎖,若事務t對資料物件a加上x鎖,則只允許t讀取和修改a,其他任何事務都不能再對a加任何型別的鎖,直到t釋放a上的鎖。這就保證了其他事務在t釋放a上的鎖之前不能再讀取和修改a

jdk1 8版本新特性之日期計算

localdate now localdate.now 2018 8 25 localdate start localdate.parse 2018 07 20 datetimeformatter.ofpattern yyyy mm dd long daysdiff chronounit.days....

Java 方法引用(JDK1 8)

引用 物件引用,物件引用的本質在於為乙個物件起別名,即 不同的棧記憶體可以同時指向同一塊堆記憶體空間。與物件引用類似的情況是,方法引用,即 為方法設定別名。在jdk 1.8之中針對於方法引用提供有如下的四種形式 引用靜態方法 類名稱 static方法名稱 引用某個物件的方法 例項化物件 普通方法 引...

java阻塞佇列介紹 jdk 1 8

blockqueue提供的相關操作和特點 方法 處理方式 丟擲異常 返回特殊值 一直阻塞 超時退出 插入 add e offer e put e offer e,time,unit 刪除remove poll take poll time,unit 檢查element peek 無無arrayblo...