您的位置:首页 > 其它

ARC下的单例模式

2015-10-16 20:23 148 查看
ARC下的单例的理解:单例是一种模式,在整个项目的生命周期中对于单例而言他只有一个该类的实例对象,并且改对象比较容易的被外界进行访问,另外他作为单例不会被其他对象进行影响而生成多余的对象。据两个实现单例的方法

1.在NSObject当然这里采用的是GCD的情况实现的单例,就如上所言,该单例可以进行在整个项目生命周期只生成一次。全局使用并且容易被外界访问的到

+(LHDBManager *)sharedMAnager{

static LHDBManager *manager = nil;

static dispatch_once_t onceToken;

dispatch_once(&onceToken, ^{

manager = [[LHDBManager alloc]init];

});

return manager;

}

2.下面是使用线程锁的方式进行实现单例对象,什么是线程锁:线程锁就是在改对象是实例化时不被其他的对象进行影响只生成该类的一个对象(不知道理解错了没)

+(LHDBManager *)sharedManager

{

static LHDBManager *manager = nil;

@synchronized(self){

if (manager == nil) {

manager = [[DBManager alloc] init];

}

}

return manager;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: