单例创建与销毁

平时创建 单例对象 用的苹果官网提倡的写法:

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

but 假设有时候我们一个用户信息类,一般是个 单例对象,但当用户退出时,我希望可以直接释放此对象,就不需要对此对象的成员变量一一释放了,执行如下代码:

/** 销毁单例 */
+ (void)deallocUser {
    if (_instance) { _instance = nil; once_predicate = 0;}
}

你可能感兴趣的:(单例创建与销毁)