在项目中最好不要用单例, 切记, 而且不宜过多使用, 占内存, 而且全局的东西状态不易改变, 不够灵活. 如果你的项目中频繁使用单例, 只能说明你水平低 .
单例模式确保一个类只有一个实例,自行提供这个实例并向整个系统提供这个实例。
对于单例
单例
在软件中,单例保证了在应用程序中,该类只被实例化一次。并且在使用时,整个应用程序使用的该对象实体是同一个实体。
贴代码:
比如,我要创建Obj类的单例。
+ (Obj *)sharedInstance {
static dispatch_once_t onceToken;
static Obj *instance;
dispatch_once(&onceToken, ^{
instance = [[Obj alloc] init];
});
return instance;
}
dispatch_once_t:其实,是一个long字段,用来专门定义单例的:
typedef long dispatch_once_t;