Synchronized与lock的对比

  • Lock是显示锁,手动开启和关闭锁,记得要关闭锁;Synchronized是隐式锁,出了作用域自动释放。
  • Lock只有代码锁,synchronized有代码块锁和方法锁。
  • 使用lock锁,JVM将花费较少时间来调度线程,性能更好。并且具有更好可扩展性,能提供更多的子类。

  优先使用顺序:lock > 同步代码块(已经进入了方法体,分配了想要资源)> 同步方法(在方法体之外)

欢迎批评指正,提出问题,谢谢!
原文地址:https://www.cnblogs.com/xxeleanor/p/15231764.html