728x90
728x90
JAVA/GoF 디자인 패턴
-
[디자인 패턴] 싱글톤 패턴 타파 및 대응 방안JAVA/GoF 디자인 패턴 2024. 4. 8. 23:41
1.static 메서드와 private 생성자 방식 자바에서 싱글톤 패턴을 처음 배우는 방식이다. public class Settings { private Settings() {} private static Settings instance = null; public static Settings getInstance() { if(instance == null) { instance = new Settings(); } return instance; } } 하지만 이 방법으로 싱글톤을 설계하게되면 쓰레드 safe하지 않게 된다. 예를 들어 쓰레드 A와 B가 거의 동시에 Settings의 getInstance()에 접근했다고 생각해보자. A가 처음 getInstance()를 접근했을 때 instance는 null..