Swift-单例

标准写法:

// 在swift中,类方法是不允许定义静态变量的
    static var once_t: dispatch_once_t = 0
    static var instance: NetWorkTools?
    class func sharedNetWorkTools() -> NetWorkTools {
        dispatch_once(&once_t) { 
            instance = NetWorkTools()
        }
        return instance!
    }

简单写法:

// swift中的let是线程安全的
    // 用到时才会创建
    static let instance: NetWorkTools = NetWorkTools()
    class func sharedNetWorkTools() -> NetWorkTools {
        return instance
    }

##注意单例用到的时候才会创建!!!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • CocoaPods升级

    czjwarrior
  • 简单的计步器实现

    czjwarrior
  • iOS UILabel设置中划线不能包含中文

    czjwarrior
  • 求求你,别用 print 来 debug 了

    之前看过这个标题的文章,看完后,我觉得太花里胡哨,用起来麻烦,我就用 print 来 debug,没毛病。

    somenzz
  • 什么是事件驱动架构(EDA)?

    Simply put, the event is a significant change in state, which is triggered when ...

    一个会写诗的程序员
  • 6 Julia 类型

    Julia中没有class,也没有子类型的继承关系,所有具体类型都是最终的,并且只有抽象类型可以作为其超类型。Julia中的继承是继承行为,而不是继承结构。

    猫叔Rex
  • python查看进程树

    py3study
  • 《Kotlin 程序设计》第四章 Kotlin 语法基础

    Kotlin 可以省略变量定义的类型声明,但是在定义参数列表和定义返回值类型时则必须明确指定类型(这个类型推断Kotlin居然没做,这地方用起来比Scala,G...

    一个会写诗的程序员
  • 微服务业务开发三个难题-拆分、事务、查询(下)

    上集:微服务业务开发三个难题-拆分、事务、查询(上) 上集我们阐述了使用微服务体系架构的关键障碍是领域模型,事务和查询,这三个障碍似乎和功能拆分具有天然的对抗...

    ImportSource
  • 如何策划一个流量分发类的产品【上篇】

    作者:刘涵宇,男,有用户体验设计背景的产品经理。曾辗转于哈尔滨、北京、深圳3个城市学习、工作和生活,目前在腾讯任职。

    腾讯大讲堂

扫码关注云+社区

领取腾讯云代金券