Swift的单例模式写法

来源:互联网 发布:手机打印软件惠普 编辑:程序博客网 时间:2024/06/06 02:20

Approach B: Nested struct

class SingletonB {        class var sharedInstance: SingletonB {        struct Static {            static let instance: SingletonB = SingletonB()        }        return Static.instance    }    }


Approach C: dispatch_once

class SingletonC {        class var sharedInstance: SingletonC {        struct Static {            static var onceToken: dispatch_once_t = 0            static var instance: SingletonC? = nil        }        dispatch_once(&Static.onceToken) {            Static.instance = SingletonC()        }        return Static.instance!    }}


0 0
原创粉丝点击