【发布时间】:2010-11-12 02:30:41
【问题描述】:
Java 中同步方法和同步块有什么区别?
我一直在网上寻找答案,人们似乎对这个不太确定:-(
我的看法是两者之间没有区别,只是同步块可能在范围内更加本地化,因此锁定的时间会更短??
如果在静态方法上使用 Lock,那么 Lock 是在什么情况下使用的? Lock on Class 是什么意思?
【问题讨论】:
-
@try-catch-finally 这不是这个问题的重复;该问题询问同步方法是仅提供对该方法的独占访问,还是对整个对象提供独占访问。
-
@MarkRotteveel 就不同的标题而言,您是对的。另一方面,另一个问题的答案也涵盖了差异:将同步部分的范围限定为(或不)某些语句并控制锁定位置(或无法控制)。
标签: java multithreading synchronization synchronized synchronized-block