// // WHManager.h #import <Foundation/Foundation.h> @interface WHManager : NSObject<NSCopying> +(id)shareManager; @end // // WHManager.m #import "WHManager.h" static WHManager *manager; @implementation WHManager +(id)shareManager{ @synchronized(self){ if (!manager) { manager = [[super alloc]init]; } } return manager; } +(instancetype)allocWithZone:(struct _NSZone *)zone{ @synchronized(self) { if (!manager) { manager = [super allocWithZone:zone]; return manager; } } return manager; } -(id)copyWithZone:(NSZone *)zone{ return self; //确保copy对象也是唯一 } @end 赞微海报分享
近期评论