objective-c - ARC 项目中的 TWRequest 泄漏

标签 objective-c ios automatic-ref-counting twrequest

我创建了下面的函数,但它似乎在 performRequestWithHandler 上泄漏。

- (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 restrictDecodingToWhitelistedClassNames:]

Malloc 128 字节 ---- 1 ---- 0x2d0650 ---- 128 字节 ---- libdispatch.dylib dispatch_queue_create$VARIANT$mp

Malloc 128 字节 ---- 1 ---- 0x2cf0f0 ---- 128 字节 ---- libdispatch.dylib dispatch_queue_create$VARIANT$mp

谢谢。

最佳答案

它是由苹果在 iOS 5.0 上的 API 代码中的一个错误引起的,现在似乎已经修复了

关于objective-c - ARC 项目中的 TWRequest 泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9456616/

相关文章:

iphone - 在启用 arc 的应用程序中重构 #ifndef __OBJC_GC_

ios - 如何根据 NSString 日期键在 NSDictionary 下方排序?

ios - 根据控件的宽度缩放 UISegmentedControl 标签

ios - Amazon Web Service (AWS) S3,如何上传受密码保护的文件夹?

ios - 如何在 iOS 应用程序的同一个项目中集成 Objective-C 和 Swift pod

iphone - 带有 ASIHTTPRequest 的 ARC

ios - UYLPasswordManager 中对象的潜在泄漏

ios - 发送到释放实例的 NSFastEnumeration 消息

ios - 如何使用 Cocoapods 制作基于两个静态库的动态框架(Swift)

ios - 在 ARC 系统中使用 openUDID