IOS 单例方法的建立

#pragma mark -单例方法
static GameKitHelper *sharedInstance;
+ (id)allocWithZone:(struct _NSZone *)zone
{
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        sharedInstance = [super allocWithZone:zone];
    });
    return sharedInstance;
}

+ (GameKitHelper *)sharedGameKitHelper
{
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        sharedInstance = [[GameKitHelper alloc] init];
    });
    return sharedInstance;
}


你可能感兴趣的:(单例,ios)