【发布时间】:2016-07-27 13:00:44
【问题描述】:
我遇到了一种情况,我正在使用sharedClass,并在其中使用块获取数据。有一个约定是在块内使用 __weak 引用来防止循环保留。如何创建一个将在整个应用程序中保持活动状态的东西的弱引用?
这是我所做的代码,
+ (instancetype)sharedPresenter {
static PostCareListPresenter *presenterInstance;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
presenterInstance = [[PostCareListPresenter alloc] init];
});
return presenterInstance;
}
- (void)getPostCareList:(NSDictionary*)pParameterDictionary
success:(void(^)(NSData*responseData))pSuccessCallback
failure:(void(^)(NSError* error))pFailureCallback {
[[GSWebAccessManager sharedManager] invokePostCareList:pParameterDictionary success:^(NSData *responseData) {
// Here I have to make a call to my private method using weak self. [weakSelf somePrvateMethod];
} failure:^(NSError *error) {
}];
}
【问题讨论】:
标签: ios objective-c memory-management singleton reference-counting