OC中线程安全的单例

时间:2015-05-11 17:27:37   收藏:0   阅读:251

 

@implementation MySingleton

+ (instancetype)sharedInstance
{
    static MySingleton* instance = nil;
    static dispatch_once_t  onceToken;
    dispatch_once(&onceToken, ^{
        instance = [[MySingleton alloc]initPrivate];
    });
    return instance;
}

-(id)init
{
    @throw [NSException exceptionWithName:@"Singleton init" reason:@"use [MySingleton sharedInstance]" userInfo:nil];
}

- (instancetype)initPrivate
{
    self = [super init];
    if (self) {
        //do your init
    }
    return self;
}

@end

 

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!