DCL(Double Checked Locking)
예)
| class SingletonManager private constructor(context: Context) { companion object { @Volatile private var instance: SingletonManager? = null fun getInstance(context: Context) = instance ?: synchronized(SingletonManager::class.java) { instance ?: SingletonManager(context).also { instance = it } } } } |
Enum을 통한 사용, LazyHolder 패턴을 통한 사용등...
'Android' 카테고리의 다른 글
| Coroutine Builder (0) | 2023.01.04 |
|---|---|
| Coroutine Context (0) | 2023.01.04 |
| 코루틴과 스레드 (0) | 2023.01.04 |
| 안드로이드 프로젝트 API 키 숨기기 (0) | 2023.01.04 |
| Android 최근 출시 노트 링크 (0) | 2023.01.03 |