Android
Android Singleton 패턴 객체
열정창작소
2023. 1. 4. 17:50
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 패턴을 통한 사용등...