【问题标题】:Memory leak using ASIHTTPRequest block使用 ASIHTTPRequest 块的内存泄漏
【发布时间】:2011-10-10 09:23:36
【问题描述】:

我正在使用示例中定义的 ASIHTTPRequest:

  __block ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setCompletionBlock:^{
    // Use when fetching text data
    NSString *responseString = [request responseString];//Memory leak here!!!
    NSLog(responseString);
   [connectionDelegate performSelector:succeededAction withObject:responseString];
}];

我一直在这里发生内存泄漏,我不知道为什么......(使用仪器的内存泄漏)

有什么想法吗???

【问题讨论】:

    标签: iphone objective-c memory-leaks asihttprequest objective-c-blocks


    【解决方案1】:

    您发布的代码很好,不会泄漏内存 - 内存泄漏必须在此处调用的代码中:

    [connectionDelegate performSelector:succeededAction withObject:responseString];
    

    succeededAction 函数或它调用的东西必须保留 responseString 并且以后不释放它。

    【讨论】:

    • 谢谢!那个问题和你想的一模一样,我保留了收到的数据,没有发布!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-05
    • 1970-01-01
    • 1970-01-01
    • 2012-08-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多