29
Swiftでdispatch_onceシングルトンモデルを使用する
Swiftでの使用に適したシングルトンモデルを作成しようとしています。これまでのところ、スレッドセーフでないモデルを次のように機能させることができました。 class var sharedInstance: TPScopeManager { get { struct Static { static var instance: TPScopeManager? = nil } if !Static.instance { Static.instance = TPScopeManager() } return Static.instance! } } Static構造体でシングルトンインスタンスをラップすると、複雑な名前付けスキームなしでシングルトンインスタンスと衝突しない単一のインスタンスが許可され、かなりプライベートになるはずです。もちろん、このモデルはスレッドセーフではありません。だから私dispatch_onceは全部に追加しようとしました: class var sharedInstance: TPScopeManager { get { struct Static { static var instance: TPScopeManager? = nil static var token: dispatch_once_t …