backup/design pattern
3. Singleton Pattern
nuKeguyS
2011. 12. 1. 17:42
# singleton pattern
싱글턴 패턴은 해당 클래스의 인스턴스가 하나만 만들어지고, 어디서든지 그 인스턴스에 접근할 수 있도록 하기 위한 패턴이다.
멀티스레스에서
1. 메서드를 동기화 - 성능에 크게 문제가 되지 않는다면(메소드 동기화는 성능 100배 정도 저하)
2. 인스턴스를 처음부터 생성 - 리소스가 문제 되지 않는다면
3. DCL(Double-Checking Locking) 사용.
## DCL에서의 volatile에 관해서...(어렵다...)
http://cafe.naver.com/avrst.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=149
### 클래스 로더를 여러개 사용할 경우에는 주의! 클래스 로더를 직접 지정해서 해결 가능
싱글턴 패턴은 해당 클래스의 인스턴스가 하나만 만들어지고, 어디서든지 그 인스턴스에 접근할 수 있도록 하기 위한 패턴이다.
멀티스레스에서
1. 메서드를 동기화 - 성능에 크게 문제가 되지 않는다면(메소드 동기화는 성능 100배 정도 저하)
2. 인스턴스를 처음부터 생성 - 리소스가 문제 되지 않는다면
3. DCL(Double-Checking Locking) 사용.
## DCL에서의 volatile에 관해서...(어렵다...)
http://cafe.naver.com/avrst.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=149
http://mkseo.pe.kr/blog/?p=475
http://blog.kangwoo.kr/43### 클래스 로더를 여러개 사용할 경우에는 주의! 클래스 로더를 직접 지정해서 해결 가능