我有一个类,它作为另一个类的代理。
public class Delegate {
private AnotherClass ac;
public void delegateCall() {
this.ac.actualCall();
}
public void setAC(AnotherClass ac) {
this.ac = ac;
}
}
如果我有很多线程调用
delegateCall()
,而另一个线程调用setAC()
会发生什么后果?我的假设是,在设置ac实例之前,一些调用delegateCall()
的线程将获得对它的访问权,而另一些线程在设置之后才能访问它。在我的特定应用程序中,每个线程获得哪个实例并不重要。我的问题是:JVM内部是否存在任何潜在的同步,可能导致调用
delegateCall()
的线程阻塞?