Lock 与Synchronized

来源:互联网 发布:无线有限制的网络连接 编辑:程序博客网 时间:2024/05/01 10:04

主要相同点:Lock能完成synchronized所实现的所有功能 

主要不同点:Lock有比synchronized更精确的线程语义和更好的性能。synchronized会自动释放锁,而Lock一定要求程序员手工释放

synchronized是在JVM层面上实现的,不但可以通过一些监控工具监控synchronized的锁定,而且在代码执行时出现异常,JVM会自动释放锁定,但是使用Lock则不行,lock是通过代码实现的,要保证锁定一定会被释放,就必须将unLock()放到finally{}中.


0 0
原创粉丝点击