synchronized 與 Lock 的對比

creamjjxx發表於2020-10-19
  • Lock是顯式鎖(手動開啟和關閉鎖,別忘記關閉鎖)synchronized是隱式鎖,出了
    作用域自動釋放
  • Lock只有程式碼塊鎖,synchronized有程式碼塊鎖和方法鎖
  • 使用Lock鎖,JVM將花費較少的時間來排程執行緒,效能更好。並且具有更好的擴充套件
    性(提供更多的子類)
  • 優先使用順序:
    Lock > 同步程式碼塊(已經進入了方法體,分配了相應資源)> 同步方法(在方
    法體之外)

相關文章