单例模式的应用和理解

【应用】

+ (instancetype)sharedInstance {
    static dispatch_once_t onceToken;
    static id instance;
    dispatch_once(&onceToken, ^{
        instance = [self new];
    });
    return instance;
}
调用时:
用工厂方法创建一个单例对象

【理解】

1.在程序生命周期只有一个对象
2.用static 关键字实现单例,不可变
3.dispatch实现多线程也唯一

你可能感兴趣的:(单例模式的应用和理解)