iOS-单例模式

2017-01-12  本文已影响12人  li_礼光

swift的单例设计模式

class SQLiteManager {    // 设计单例对象    
    static let shareInstance : SQLiteManager = SQLiteManager()
}

OC的单例设计模式

// 一般使用为单例就足够了,每次都用shareSingle创建对象//获取单例
+ (instancetype)shareSingle {    
    static LLGSingleDayAndNight *single = nil;
    // 添加同步锁,一次只能一个线程访问,如果有多个线程访问,等待,一个访问结束后下一个访问    
    @synchronized (self) {        
        if (single == nil) {            
        single = [[LLGSingleDayAndNight alloc]init];        
        }    
    }    
    return single;
}

+(instancetype)sharedInstance{    
    static id sharedInstance = nil;    
    static dispatch_once_t onceToken;           
    dispatch_once(&onceToken, ^{        
        sharedInstance = [[self alloc] init];    
    });   
    return sharedInstance;
}

新学习一种单例思想

静态区存放单例对象.png
上一篇 下一篇

猜你喜欢

热点阅读