轉自:
http://www.java265.com/JavaMianJing/202205/16525413643372.html
同步鎖:
同步鎖是為了保證每個執行緒都能正常執行原子不可更改操作,同步監聽物件/同步鎖/同步監聽器/互斥鎖的一個標記鎖.
下文筆者講述Synchronized和ReentrantLock的不同之處,如下所示:
1.實作方式不同
Synchronized是JVM層面的關鍵字
ReentrantLock是API層面
2.可修改物件范圍不同
Synchronized可以修飾代碼塊和方法
ReentrantLock只能用于代碼塊
3.操作方式不同
Synchronized不需要手動釋放鎖
ReentrantLock需要手動釋放鎖
4.鎖方式不同
Synchronized是非公平鎖
ReentrantLock 可以通過引數指定為公平或者非公平
5.中斷方式不同
Synchronized等待不能中斷
ReentrantLock 等待可以中斷,tryLock 可以設定等待時長;
6.是否可重入
Synchronized和ReentrantLock都是可重入鎖
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/498590.html
標籤:其他
下一篇:IOS OpenGL ES GPUImage 影像顯示亮度最高的像素,其他為黑 GPUImageThresholdedNonMaximumSuppressionFilter
