运行“基于导航的应用程序”模板项目时,奇怪的内存泄漏

时间:2010-09-11 14:27:13

标签: iphone memory-leaks

我做了一个非常简单的测试,即使用xCode创建一个空白项目并在设备上执行。当使用Instruments执行时,我发现了内存泄漏!

请注意我正在使用运行iOS 4.0.2的iPhone 3G设备

以下是重现的步骤:

  1. 来自xCode 3.2.3选择文件 - >新项目 - >基于导航的应用程序选择使用核心数据进行存储
  2. 选择设备 - 4.0 作为构建目标
  3. 选择运行 - >使用性能工具运行 - >泄漏
  4. 在iPhone 3G设备(运行iOS 4.0.2)上,在已启动的应用程序中多次单击“+”按钮。
  5. 这是仪器截图: alt text

    任何人都可以确认这个问题吗?

    谢谢, 约书亚

2 个答案:

答案 0 :(得分:1)

看起来你正在收到与WebKit(WebCore,JavaScriptCore等)相关的泄密。我在iOS 4.0的一些项目中遇到了完全相同的泄漏,但这些应用程序仍然得到Apple的批准(因为泄漏不是你的错)。

好消息?我最近使用4.1 SDK测试了这些相同的应用程序,并且所有与WebKit相关的泄漏都消失了!由于您使用的是4.0,我建议您尝试使用4.1 SDK来查看它们是否已经消失。

答案 1 :(得分:0)

Cocoa一直有很小的泄漏,偶尔会有泄漏的东西,而不是真的。在寻找泄漏时,您正在寻找的是随着时间的推移而增长的泄漏。看到像这样几个KB的单个泄漏报告并不值得关注。如果你在Apple的空模板项目上运行它,你应该打开一个雷达(bugreport.apple.com),因为它意味着在Cocoa中有一个小但常见的泄漏或者仪器是错误的。在任何一种情况下,它都应该是固定的,但它不会失去睡眠。