주문형 초기화 보유자 관용구에 의해 생성 된 싱글 톤을 사용하고 있습니다. 끝나면 다른 프로그램에서 사용할 수 있도록 싱글 톤을 "반환"하고 싶습니다. 다음과 같이 내가 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
[enum] (http://stackoverflow.com/questions/70689/) 대신 사용 하시겠습니까? – fredoverflow
두 스레드가 실행 중입니다. 각 스레드는 수시로 MyObject 인스턴스에 액세스합니다. 나는 그것을 한 스레드에서 사용하고 그것을 풀어주지 않으면 다른 스레드에서 접근 할 수 없다. 아니면 사용중인 스레드에서 인스턴스를 제거할까요? – tip