작성
·
359
답변 1
0
빌푸 솔루션이 스레드 세이프가 되는 이유는, 두 개의 스레드가 거의 동시에 getInstance()를 실행시키는 상황에서 1번 스레드가 먼저 getInstance()를 실행시켰을 경우 JVM이 2번 스레드의 요청을 받아도 1번 스레드에 의해 static inner class가 생성될 때까지 대기시키므로 싱글톤이 유지되기 때문입니다. 다음 토론도 참고하시면 좋을 것 같습니다.
https://stackoverflow.com/questions/6109896/singleton-pattern-bill-pughs-solution