synchronized与lock的对比

wwwgo / 2023-05-03 / 原文

  1. lock是显示锁(需要手动开启和关闭锁),synchronized是隐式锁,出了作用域自动释放
  2. lock只有代码锁,synchronized有代码块锁和方法锁
  3. 使用lock,JVM将花费较少的时间来调度线程,性能较好,并且具有更好的扩展性

优先级:
Lock > 同步代码块 > 同步方法