Swift中的单例模式

Swift中的单例模式,第1张

概述三种方法实现单例模式,线程安全 1. 全局变量 2. 结构 3. dispatch_once 1.全局变量: 这里使用了全局变量而非类变量,是因为不支持类变量 private let _SingletonSharedInstance = Singleton()class Singleton { class var sharedInstance : Singleton {

三种方法实现单例模式,线程安全
1. 全局变量
2. 结构
3. dispatch_once

1.全局变量:

这里使用了全局变量而非类变量,是因为不支持类变量

private let _SingletonSharedInstance = Singleton()class Singleton {    class var sharedInstance : Singleton {        return _SingletonSharedInstance    }}
2.结构:

与类不同,结构可以定义静态变量,通过使用此方法,将静态变量升级为类变量(在支持类变量之前,推荐此方法)

class Singleton {    class var sharedInstance : Singleton {        struct Static {            static let instance : Singleton = Singleton()        }        return Static.instance    }}
3.dispatch_once:
class Singleton {    class var sharedInstance : Singleton {        struct Static {            static var oncetoken : dispatch_once_t = 0            static var instance : Singleton? = nil        }        dispatch_once(&Static.oncetoken) {            Static.instance = Singleton()        }        return Static.instance!    }}
总结

以上是内存溢出为你收集整理的Swift中的单例模式全部内容,希望文章能够帮你解决Swift中的单例模式所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1082251.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存