public class ConnectionManager {
private static Map <String, ConnectionManager> managerInstances = new HashMap<String, ConnectionManager>();
private String dsKey;
private ConnectionManager(String dsKey){
this.dsKey = dsKey;
}
public static ConnectionManager getInstance(String dsKey){
ConnectionManager managerInstance = managerInstances.get(dsKey);
if (managerInstance == null) {
synchronized (ConnectionManager.class) {
managerInstance = managerInstances.get(dsKey);
if (managerInstance == null) {
managerInstance = new ConnectionManager(dsKey);
managerInstances.put(dsKey, managerInstance);
}
}
}
return managerInstance;
}
}
최근 GoF에서 책 정의에 따라 Singleton 패턴이 사용되지 않은 어딘가에서이 코드를 보았습니다. 싱글 톤은 Map
의 자체 인스턴스를 저장합니다.어떤 종류의 싱글 톤입니까?
어떤 종류의 싱글 톤이 호출 될 수 있습니까? 아니면 이것이 Singleton의 유효한 사용입니까?
@assylias 설명이 마음에 들지는 않지만 – MadProgrammer