java中的synchronized关键字仅仅是语法糖吗?
可能的重复:
同步块与同步方法?
嗨,我只是想知道 Snippet-A 只是一种语法片段-B 的糖? :
Snippet A:
public synchronized void F() {
//..code
}
Snippet B:
public void F() {
synchronized (this) {
//..code
}
}
或者更确切地说,上面两段代码到底有什么区别?
Possible Duplicate:
synchronized block vs synchronized method?
Hi all I was wondering is Snippet-A simply a syntax sugar for Snippet-B? :
Snippet A:
public synchronized void F() {
//..code
}
Snippet B:
public void F() {
synchronized (this) {
//..code
}
}
Or rather, what exactly is the difference between the two pieces of code above?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
两者是相同的。请参阅§8.4.3.6 Java 语言规范 (JLS):
在 JLS 的示例中,
据说 this: 与 this: 具有相同的效果,
并且您的两个
F
方法与示例bump
方法非常相似。The two are identical. See §8.4.3.6 of the Java Language Specification (JLS):
In the example in the JLS, this:
is said to have the same effect as this:
and your two
F
methods are very similar to the examplebump
methods.