소피it블로그
[Swift] 싱글턴 활용하여 공유 자원 관리하기 본문
https://developer.apple.com/documentation/swift/managing-a-shared-resource-using-a-singleton
Apple Developer Documentation
developer.apple.com
단 하나의 공유된 클래스 인스턴스를 사용하여 공유 자원에 접근할 수 있게 하기
1. 개요
싱글턴은 전역적으로 접근 가능한 클래스의 공유 인스턴스를 제공하기 위해 사용한다. 효과음을 재생하기 위한 오디오 채널이나 HTTP 요청을 만들기 위한 네트워크 매니저처럼, 앱 전체에서 공유되는 자원이나 서비스에 접근하는 공통된 방법으로써 자신만의 싱글턴을 만들 수도 있다.
2. 싱글턴 생성하기
간단한 싱글턴은 static 타입 프라퍼티를 통해 생성하는데, 이는 동시다발적으로 여러 스레드에서 접근된다 하더라도 단 한 번 lazy하게 초기화됨을 보장받는다.
class Singleton {
static let shared = Singleton()
}
초기화 이후에도 추가적인 셋업이 필요하다면 클로저의 invocation의 결과를 전역 상수에 할당해주면 된다.
class Singleton {
static let shared: Singleton = {
let instance = Singleton()
// setup code
return instance
}()
}
'개발_iOS > 스위프트' 카테고리의 다른 글
[Swift 공식문서] Control Flow - Early Exit 정리 (guard문) (0) | 2022.08.21 |
---|---|
[Swift 공식문서] 삼항 연산자와 Nil 병합 연산자 (0) | 2022.08.18 |
[Swift 공식문서] Extensions 정리 (0) | 2022.08.10 |
[Swift 공식문서] Type Casting 정리 (0) | 2022.08.10 |
[Swift 공식문서] Inheritance 정리 (0) | 2022.06.09 |