this reference escape during construction problem(由 Brian Goetz 和其他人在 Java Concurrency in Practice 中调用)是否影响单线程程序或仅影响多线程程序?我的意思是,如果我的类不应该是线程安全的,那么在构造过程中让 this 引用转义是否可以?
编辑:例如,在这里:
public class ThisEscape {
public ThisEscape(EventSource source) {
source.registerListener(
new EventListener() {
public void onEvent(Event e) {
doSomething(e);
}
});
}
}
EDIT2:我的问题的动机是Eclipse的插件WindowBuilder在JFrame的构造函数中创建(或似乎创建......)动作侦听器,并默认将匿名类传递给那些,从而允许this引用转义......