// GCD中的一次性代码
// 在写单例的时候,经常使用.
// 最简单的实现单例设计模式的方法.
//====================OC版单例=====================
/**
* 快速创建工具类
*/
+(instancetype)share<#Manager#>{
static id instance;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
instance = [[super alloc]init];
});
return instance;
}
//=====================Swift版防OC版单例=======================
class <#Tools#>: NSObject {
static var instance: <#Tools#>?
static var token: dispatch_once_t = 0
//swift仿OC 创建单例
class func share<#Tools#>()-><#Tools#>{
dispatch_once(&token) { () -> Void in
instance = <#Tools#>()
}
return instance!
}
}
//=======================Swift自己单例写法======================
//Swift中的单例写法 - let本身就是线程安全
static let shareTools = SoundTools()
// 在写单例的时候,经常使用.
// 最简单的实现单例设计模式的方法.
//====================OC版单例=====================
/**
* 快速创建工具类
*/
+(instancetype)share<#Manager#>{
static id instance;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
instance = [[super alloc]init];
});
return instance;
}
//=====================Swift版防OC版单例=======================
class <#Tools#>: NSObject {
static var instance: <#Tools#>?
static var token: dispatch_once_t = 0
//swift仿OC 创建单例
class func share<#Tools#>()-><#Tools#>{
dispatch_once(&token) { () -> Void in
instance = <#Tools#>()
}
return instance!
}
}
//=======================Swift自己单例写法======================
//Swift中的单例写法 - let本身就是线程安全
static let shareTools = SoundTools()