swift创建单例的三种方法

来源:互联网 发布:intelj java.util.map 编辑:程序博客网 时间:2024/04/30 09:09
private let _SingletonASharedInstance = SingletonA()class SingletonA  {    class var sharedInstance : SingletonA {        return _SingletonASharedInstance    }}class SingletonB {    class var sharedInstance : SingletonB {        struct Static {            static let instance : SingletonB = SingletonB()        }        return Static.instance    }}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