我創建了下面的函數,但它似乎在performRequestWithHandler上泄漏。在ARC項目中TWRequest泄漏
- (void)getDataForRequest:(TWRequest *)postRequest withSelector:(SEL)selector {
if (twitterAccount != nil) {
[postRequest setAccount:twitterAccount];
[postRequest performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error){
id jsonResponse = nil;
if (responseData) {
NSError *jsonParsingError = nil;
jsonResponse = [NSJSONSerialization JSONObjectWithData:responseData options:0 error:&jsonParsingError];
}
if (!jsonResponse) {
NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSASCIIStringEncoding];
jsonResponse = [NSDictionary dictionaryWithObjectsAndKeys:responseString, @"response", nil];
}
if (error != nil && ![jsonResponse objectForKey:@"error"]) {
NSString *errorMessage = error.localizedDescription;
jsonResponse = [NSDictionary dictionaryWithObjectsAndKeys:errorMessage, @"error", nil];
}
[self performSelectorOnMainThread:selector withObject:jsonResponse waitUntilDone:NO];
}];
}
}
泄漏通過回溯:
泄露的對象---- ----#----地址----大小圖書館負責----負責任的框架
XPCProxy ---- 1 ---- ---- 0x2c6480 32個字節---- ----帳戶 - [ACOAuthSigner initWithAccount:]
的NSArray ---- 1 ---- 0x2cf010 ---- 64字節---- XPCObjects ---- - [XPCProxy restrictDecodin gToWhitelistedClassNames:]
malloc的128個字節---- 1 ---- ---- 0x2d0650 128個字節---- libdispatch.dylib dispatch_queue_create $ $ VARIANT熔點
malloc的128個字節---- 1 ---- 0x2cf0f0 ---- 128字節---- libdispatch.dylib dispatch_queue_create $ VARIANT $ mp
謝謝。
什麼是操作系統?你在使用ARC嗎?您是否嘗試過啓用殭屍樂器? – 2012-02-27 13:22:22
是的,我已經使用殭屍啓用儀器。我正在使用iOS 5和ARC。謝謝。 – ajayjapan 2012-02-27 18:16:54
您是否找到解決方案? – iBiryukov 2012-04-30 21:56:11