Iphone 如何解决分配问题?

Iphone 如何解决分配问题?,iphone,ios,ios4,Iphone,Ios,Ios4,我在仪器工具中看到这个问题,但不知道问题出在哪里。没有泄漏报告 当我关注这些链接时,我发现了一些问题(图2、图3和图4),这些是泄漏还是什么?我想我在代码中的每一处都犯了同样的错误,但不知道是什么 似乎有什么东西在分配成吨的Objective-C字符串。单击“CFString”类别名称旁边的箭头,查看是什么在调用NSString上的alloc函数。查看您的代码,我可以看到一些漏洞: activityIndicator,您永远不会释放它 self.conn=[NSURLConnectio

我在仪器工具中看到这个问题,但不知道问题出在哪里。没有泄漏报告

当我关注这些链接时,我发现了一些问题(图2、图3和图4),这些是泄漏还是什么?我想我在代码中的每一处都犯了同样的错误,但不知道是什么


似乎有什么东西在分配成吨的Objective-C字符串。单击“CFString”类别名称旁边的箭头,查看是什么在调用NSString上的alloc函数。

查看您的代码,我可以看到一些漏洞:

  • activityIndicator,您永远不会释放它
  • self.conn=[NSURLConnection alloc]。。。它将导致泄漏,取出conn后面的“self”(假定您的setter正在保留)
  • UILabel,你永远不会发布它

试试看,然后告诉我。

如果可能的话,您可以尝试在添加标签作为子视图后手动释放标签,我不明白为什么它必须自动释放。如果您需要对它的引用,那么您可以在dealloc函数中释放它。请告诉我为什么它会自动释放,我可以试着给出一个完整的答案。@Samuli Lehtonen你是对的,我会让它释放。关于其他事情?尤其是导航控制器的alloc问题,我看到每次推都会有巨大的内存增加,即使我不知道viewcontroller中的视图会消失。你应该检查在弹出viewcontroller时是否调用了dealloc方法(也称为返回层次结构)。@Samuli Lehtonen yes dealloc被称为dnx,我很困惑,conn是自动释放的,为什么self.conn=[NSURLConnection alloc]。。泄漏?保留将是2,然后在池后再次保留1?UILabel也会自动释放