Tag: 派遣

在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 = 0 […]