Objective c 使用启用ARC的TBXML从url解析大型xml文件时出现内存泄漏

Objective c 使用启用ARC的TBXML从url解析大型xml文件时出现内存泄漏,objective-c,xml,automatic-ref-counting,tbxml,Objective C,Xml,Automatic Ref Counting,Tbxml,我正在使用TBXML解析来自url的XML文件,我已经打开了ARC。但我得到了以下代码的内存泄漏: - (void)readXmlFromUrl:(NSString*)url { NSURL *aUrl = [NSURL URLWithString:url]; NSData *data = [[NSData alloc] initWithContentsOfURL:aUrl]; TBXML *tbxml = [[TBXML alloc] initWithXMLData:d

我正在使用TBXML解析来自url的XML文件,我已经打开了ARC。但我得到了以下代码的内存泄漏:

- (void)readXmlFromUrl:(NSString*)url
{
    NSURL *aUrl = [NSURL URLWithString:url];
    NSData *data = [[NSData alloc] initWithContentsOfURL:aUrl];
    TBXML *tbxml = [[TBXML alloc] initWithXMLData:data];
//    data = nil;
//    NSLog(@"Reading from %@", url);
    // If TBXML found a root node, process element and iterate all children
    if (tbxml.rootXMLElement) {
        NSLog(@"Root Found");
        [self traverseElement:tbxml.rootXMLElement];
    }

//    data = nil;
//    aUrl = nil;
//    tbxml = nil;
//    NSLog(@"Retain count for TBXML %d", tbxml.retainCount);
}
我附上了一张内存泄漏的图片。 提前谢谢
不是泄漏,但可能是静态分析仪中的错误

我的回答是假的。我没有看到你在使用ARC,所以不需要显式自动释放。啊,是的,为什么ARC会显示这样的警告-ARC==不是我要释放的工作。我明白了。很高兴我没有使用ARC。您确定在运行静态分析器时使用ARC构建吗?ARC可能只对某些配置启用,但Analyze使用不同的配置。我在创建项目时启用了ARC