synchronized与lock对比

•lock锁是显式锁(手动开启和关闭),synchronized是隐式锁,出了作用域自动释放。

•lock只有代码块锁,synchronized有代码块锁和方法锁。

•使用lock锁,jvm将花费更少的时间来调度线程,性能更好。并且具有更好的扩展性(提供更多的子类)

•优先使用顺序:

lock>同步代码块(已经进入方法体,分配了相应资源)>同步方法(在方法体之外)

posted @ 2021-03-13 21:08  琴湖copy王  阅读(42)  评论(0)    收藏  举报