美文网首页
iOS简单学之10-单例

iOS简单学之10-单例

作者: 南风无影 | 来源:发表于2016-11-15 10:00 被阅读9次

简单说来,单例就是使得类中的一个对象成为系统中的唯一实例。

iOS 4.0 及以后, 我们一般用这种方法来创建单例。

+ (instancetype)sharedInstance{
    //必须静态或全局
    static YFSessionManager *sharedInstance; 
    static dispatch_once_t onceToken;
    
    dispatch_once(&onceToken, ^{

        sharedInstance = [[YFSessionManager alloc] init];
        sharedInstance.recodeSessions = [NSMutableArray new];
    });
    
    return sharedInstance;
}

查看函数dispatch_once的原型

 void dispatch_once(
    dispatch_once_t *predicate,
    dispatch_block_t block);

第一个参数predicate: 检查后面第二个参数所代表的代码块是否被调用的谓词,
第二个参数则是在整个应用程序中只会被调用一次的代码块。
dispach_once函数中的代码块只会被执行一次,而且还是线程安全的。

相关文章

  • iOS简单学之10-单例

    简单说来,单例就是使得类中的一个对象成为系统中的唯一实例。 iOS 4.0 及以后, 我们一般用这种方法来创建单例...

  • 单例

    iOS单例模式iOS之单例模式初探iOS单例详解

  • iOS模式设计之--创建型:1、单例模式

    iOS模式设计之--1、单例模式

  • iOS 单例模式

    关于单例模式的详解,看完这几篇,就完全了然了。iOS 单例模式iOS中的单例模式iOS单例的写法

  • iOS开发 单例使用问题

    iOS开发 单例使用问题 iOS开发 单例使用问题

  • iOS开发 单例使用问题

    iOS开发 单例使用问题 iOS开发 单例使用问题

  • JAVA学习笔记(三)

    前言: 这周忙的不行,没学多少东西,就简单的学习下Java的单例吧。 设计模式之单例 单例模式是最简单也是最常用的...

  • iOS 单例模式 or NSUserDefaults

    本文内容:iOS的单例模式NSUserDefaults的使用总结:iOS单例模式 and NSUserDefaul...

  • iOS单例清除

    iOS开发中最常见的设计模式就是单例模式,简单,好用,要是不会单例模式感觉都不好意思出门和人打招呼,最近在单例上踩...

  • 单例模式 Singleton Pattern

    单例模式-菜鸟教程 iOS中的设计模式——单例(Singleton) iOS-单例模式写一次就够了 如何正确地写出...

网友评论

      本文标题:iOS简单学之10-单例

      本文链接:https://www.haomeiwen.com/subject/ikvkpttx.html