本文主要是介绍Synchronize与Lock的对比,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、Lock是显示锁(手动开启和关闭,别忘记关闭),synchronize是隐式锁,出了所用域自动释放。
2、Lock只有代码块锁,synchronize有代码块锁和方法锁。
3、使用Lock锁,JVM将花费较少的时间来调度线程,性能更好。并且具有更好的扩展性(提供更多的子类,比如:ReentrantLock)
4、优先使用顺序:
Lock>同步代码块(方法体中的代码块,分配了相应的资源)>同步方法(在方法体之外)
这篇关于Synchronize与Lock的对比的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!