IOS单例模式推荐写法(转载)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS单例模式推荐写法(转载)相关的知识,希望对你有一定的参考价值。

 1 +(instancetype)sharedUserLoginModel{
 2  
 3     static YLWUserLoginModel *instance;
 4     
 5     static dispatch_once_t onceToken;
 6     
 7     dispatch_once(&onceToken, ^{
 8         
 9         instance = [[YLWUserLoginModel alloc]init];
10         
11     });
12     return instance;
13     
14 }

这种写法的好处是:

1. 线程安全。

2. 满足静态分析器的要求。

3. 兼容了ARC

总结:1.这个方法可以在创建单例或者某些初始化动作时使用,以保证其唯一性。2.该方法是线程安全的,所以请放心大胆的在子线程中使用。(前提是你的dispatch_once_t *predicate对象必须是全局或者静态对象。这一点很重要,如果不能保证这一点,也就不能保证该方法只会被执行一次。)

转自:http://www.lrdup.net/archives/1034

 

以上是关于IOS单例模式推荐写法(转载)的主要内容,如果未能解决你的问题,请参考以下文章

单例模式写法

创建型设计模式--单例模式

性能比较好的单例写法

最简单的设计模式——单例模式的演进和推荐写法(Java 版)

单例(Singleton pattern)模式的七种写法

iOS单例模式写法以及GCD