일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- SQL
- auto configure
- 초대장
- 리눅스
- hyperledger
- resilience4j
- dynamic query
- 학점
- c#
- 백준 알고리즘
- 자바
- 알고리즘
- 파이썬 소스
- 자바 프로젝트
- 유사코드
- MongoDB
- JVM
- 운영체제
- 오라클 디비
- 프로젝트
- K6
- gradle
- 티스토리
- oracle
- 문법 정리
- spring
- smart cast
- jsp
- 파이썬
- 오라클
Archives
- Today
- Total
모종닷컴
디자인 패턴5 - Singleton Pattern 본문
반응형
학습목표
- 하나의 인스턴스만 생성하고 이용할 수 있도록 하는 것
구조도는 다음과 같습니다.
대표적인 싱글톤 예제는 DBCP가 있습니다.
객체 생성을 줄임으로서 Heap 영역의 메모리가 줄었고, 하나의 인스턴스만 공유할 수 있게 되었다.
개인적으로 조금 주의를 가해야 한다는 생각은 자원을 공유한다는 것이기 때문에 멀티 스레드 같은 환경에서는 동기화를 시켜서 사용해야 할 것 같습니다. (그냥 Synchronized보다는 좀 더 효율적으로 만들순 없을까나... 훔...)
또 싱글톤의 경우 종료시까지 Heap 영역에 남는다는 점도 있습니다(가비지 컬렉터가 지우지 못한다)
[소스 : https://github.com/kimjongmo/DesignPattern/tree/master/05Singleton]
[참조 : https://www.youtube.com/watch?v=5jgpu9-ywtY&t=136s]
반응형
'Programming > 디자인패턴' 카테고리의 다른 글
디자인 패턴8 - Proxy Pattern (0) | 2018.08.03 |
---|---|
디자인 패턴6 - Prototype Pattern (0) | 2018.05.21 |
디자인 패턴4 - Factory Method Pattern (0) | 2018.05.21 |
디자인 패턴3 - Template pattern (0) | 2018.05.18 |
디자인 패턴2 - Adapter Pattern (0) | 2018.05.18 |