Слияние кода завершено, страница обновится автоматически
Следующий фрагмент кода (аналогичные проблемы есть и в других местах) может привести к утечке памяти.
[op addCompletionHandler:^(MKNetworkOperation* completedOperation) {
[completedOperation responseJSONWithCompletionHandler:^(id jsonObject) {
msg.responseString = completedOperation.responseString;
msg.output = jsonObject;
[self checkCode:msg];
if([completedOperation isCachedResponse]){
NSLog(@"iscache:YES");
}else{
NSLog(@"iscache:NO");
}
}];
} errorHandler:^(MKNetworkOperation *errorOp, NSError* error) {
msg.error = error;
[self failed:msg];
}];
Можно изменить на:
__unsafe_unretained Request *weakMsg = msg;
__unsafe_unretained Action *weakSelf = self;
[op addCompletionHandler:^(MKNetworkOperation* completedOperation) {
[completedOperation responseJSONWithCompletionHandler:^(id jsonObject) {
weakMsg.responseString = completedOperation.responseString;
weakMsg.output = jsonObject;
[weakSelf checkCode: weakMsg];
if([completedOperation isCachedResponse]){
_
NSLog(@"iscache:YES");
}else{
NSLog(@"iscache:NO");
}
}];
} errorHandler:^(MKNetworkOperation *errorOp, NSError* error) {
weakMsg.error = error;
[weakSelf failed: weakMsg];
}];
Вход Перед тем как оставить комментарий