单例的创建

参考博客:http://blog.csdn.net/lyl123_456/article/details/52462621

写单例主要需要注意两点:

1>单例的生命周期如何保证不会释放。

2>保证线程安全,不会创建出多个实力来。

//至于其他的各种实现方式,只是效率方面有区别,效果是没有问题的。

推荐方式:

推荐写法

1.static关键字保证了单例在静态区,即保证了生命周期。

2.onceToken保证了线程安全,以及只执行一次。

不推荐的方式

加锁来保证

二者比较:dispatch_once可以简化代码保证线程安全,,无需当心加锁和同步。而使用synchronized,每次运行代码都需要获取锁。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • //gcd创建单例: staticid_instance; +(instancetype)allocWithZon...
    某某徐某某阅读 1,891评论 0 0
  • 单例的创建步骤和使用说明 一、基本概念 1.单例设计模式运用较为普遍、广泛且较为简单的设计模...
    IIronMan阅读 4,610评论 2 6
  • c#iOS单例的创建与销毁 单例:单例模式使一个类只有一个实例.单例是在使用过程,保证全局有唯一的一个实例.这样,...
    laughingkid阅读 35,856评论 16 46
  • shareO: 非线程安全,因为如果两个线程同时访问,就不是创建一个了。share1: 线程安全,加入了同步锁,线...
    helinyu阅读 1,053评论 0 0
  • 前几天听《夜听》听到眼睛模糊,不只是因为文字,还有音乐,那么的干净纯粹。第一次听那首《消失的光年》大概是十年前,思...
    旅夜书怀_阅读 1,644评论 0 0