2014-04-24 3 views
-2

싱글 톤 패턴은 응용 프로그램 스레드 당 하나의 인스턴스를 포함 할 수 있습니다.jvm 당 단일 구아바 서비스 관리자 인스턴스를 만드는 방법은 무엇입니까?

guava Service Manager가 JVM별로 하나만 실행되고 있는지 어떻게 확인할 수 있습니까? 따라서 새로운 별도의 항목을 시작하면 자바 스레드는 서비스 관리자가 실행 중인지 여부를 확인할 수 있습니다.

+0

Pls가 질문을 개선하기 위해 의견을 표명합니까? – Njax3SmmM2x2a0Zf7Hpd

+0

나는 무엇이 문제인지 잘 모르겠다. 내 대답이 도움이 될 수도 있고 아닐 수도있다. – maaartinus

답변

1

왜 여러 인스턴스를 만들지 않는 것이 효과가 없을 것이라고 생각하십니까? 싱글 톤으로 ServiceManagerProvider을 구현하고 서비스 관리자에 액세스하려면 serviceManagerProvider.get() 만 사용하십시오.


대신 싱글 (반) 패턴의 의존성 삽입 (Dependency Injection)을 사용하는 것이 좋습니다 : 여기

@Singleton 
public class ServiceManagerProvider implements Provider<ServiceManager> { 
    private final ServiceManager serviceManager = ... 

    @Overrride 
    public ServiceManager get() { 
     return serviceManager; 
    } 
} 

, 당신은, 인젝터 당 단일 인스턴스를 얻을 당신이 원하는 (해야)가 정확히 무엇이다.

관련 문제