通过示例分析Swift单例模式
2015-06-09 09:32
651 查看
三种Swift实现单例模式的方法:全局变量,内部变量,dispatch_once方式
1. 全局变量
private let _singleton = Singleton() class Singleton: NSObject { class var sharedInstance: Singleton { get { return _singleton } } }
2. 内部变量
class Singleton { class var sharedInstance: Singleton { get { struct SingletonStruct { static let singleton: Singleton = Singleton() } return SingletonStruct.singleton } } }
3. dispatch_once方式
class Singleton { class var sharedInstance: Singleton { get { struct SingletonStruct { static var onceToken:dispatch_once_t = 0 static var singleton: Singleton? = nil } dispatch_once(&SingletonStruct.onceToken, { () -> Void in SingletonStruct.singleton = Singleton() }) return SingletonStruct.singleton! } } }
以上所述就是本文的全部内容了,希望大家能够喜欢。
您可能感兴趣的文章:
相关文章推荐
- Apple Swift学习教程
- php设计模式之单例模式实例分析
- C#设计模式之单例模式实例讲解
- 深入理解JavaScript系列(25):设计模式之单例模式详解
- Java单例模式、饥饿模式代码实例
- Swift中实现点击、双击、捏、旋转、拖动、划动、长按手势的类和方法介绍
- Android源码学习之单例模式应用及优点介绍
- C++设计模式之单例模式
- Java线程安全中的单例模式
- PHP 面向对象程序设计(oop)学习笔记(三) - 单例模式和工厂模式
- php实现singleton()单例模式实例
- PHP中数据库单例模式的实现代码分享
- php利用单例模式实现日志处理类库
- 浅析php单例模式
- php单例模式实现方法分析
- js单例模式的两种方案
- php单例模式示例分享
- java单例模式使用详解
- android设计模式之单例模式详解