我正在使用由按需初始化持有人成语创建的单例。 当我完成后,我想“返回”单身人士,以便它可以被其他程序使用。我能做到这一点如下...在java中释放单例的实例
创建辛格尔顿
public class MyObject{
private MyObject(){}
private static class Holder{
private static final MyObject INSTANCE = new MyObject();
}
public static MyObject getInstance(){
return Holder.INSTANCE;
}
}
别的地方我用这个由
MyObject myObject = MyObject.getInstance();
// do something
myObject = null;
System.gc();
我不明白你为什么要破坏你的单身实例吗? – Lrrr 2014-09-20 10:20:44
我可以建议使用[an enum](http://stackoverflow.com/questions/70689/)吗? – fredoverflow 2014-09-20 10:24:48
我有两个线程正在运行,每个线程都会不时访问MyObject实例。我很害怕,如果我在一个线程中使用它而不释放它,我无法从另一个线程访问它。或者它会让我的实例远离正在使用的线程? – tip 2014-09-20 10:25:06