일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 파이썬
- PostgreSQL
- 브랜디
- github
- c#
- 프로그래머스 월간 코드 챌린지 시즌1
- selenium
- 프로그래머스 월간 코드 챌린지
- 프로그래머스 코딩 테스트 연습
- 프로그래머스 코딩테스트 연습
- FastAPI
- PostgreSQL 설치 시 에러
- Spring Boot
- 디자인 패턴
- heroku
- 애드센스
- Firefox
- git
- Word Cloud
- github actions
- 클린 코드
- Codeforces
- 바이오데이터 엔지니어
- Python
- 스프링 부트와 AWS로 혼자 구현하는 웹 서비스
- 스코페2021
- WPF
- terraform
- 프로그래머스 코딩테스트 연습문제
- pycharm
Archives
- Today
- Total
목록싱글턴 패턴 (1)
프로그래밍 연습하기
Singleton Pattern(싱글턴 패턴)
싱글턴 패턴이란 해당 클래스의 인스턴스가 하나만 만들어지고, 어디서든지 그 인스턴스에 접근할 수 있도록 하기 위한 패턴입니다. 프로그램이 시작시에 생성되게 하지 않고 필요한 시기에 생성할 수도 있습니다. 싱글턴 패턴을 만들 때, private static으로 인스턴스를 저장합니다. 그리고 getInstance()를 구현하여 그 인스턴스가 있다면 그것을 반환하고, 없다면 새로 생성합니다. 이 과정이 멀티스레딩 상황에서 구현된다면, 자칫 인스턴스가 여러개 생성될 수 있습니다. getInstance()에 synchronize 키워드를 사용함으로써 이 문제를 해결할 수 있습니다. 하지만 속도 저하 등의 문제가 있습니다. 이런 문제에 대응하는 방법이 세 가지 있습니다. 그냥 Synchronize 키워드를 사용합니..
디자인 패턴
2020. 8. 6. 22:10