【发布时间】:2011-12-05 11:21:31
【问题描述】:
我对java同步机制有疑问。让我们看下面这段代码——
class A {
int instance=0;
synchronized void met1() {
instance=instance +1;
....
instance = instance+2*3;
}
在上面的方法met1中,我们需要让它在多线程环境中同步,因为它正在修改一个对象的实例变量。但是在这段代码中--
class A {
synchronized void met1() {
local=local +1;
....
local = local+2*3;
}
met1 方法正在修改一个局部变量,我认为这对于执行该方法的每个线程都是唯一的。那么在这种情况下,当一个线程只修改一个局部变量时,是否需要让方法同步呢?
【问题讨论】:
标签: java synchronization