【问题标题】:Xcode Memory UtilizedXcode 内存占用
【发布时间】:2014-02-06 15:05:01
【问题描述】:

所以在 xcode 中,Debug Navigator 会显示 CPU 使用情况和内存使用情况。当您单击内存时,它会显示“已使用内存”。

在我的应用程序中,我使用的是最新的 Restkit (0.20.x),每次我使用 getObjectsAtPath 发出 GET 请求(它甚至不会返回非常大的有效负载),使用的内存都会增加大约 2mb。所以如果我刷新我的应用程序 100 次,Memory Utilized 将增长超过 200mb。

但是,当我运行 Leaks 工具时,Live Bytes 仍然很小,并且不会随着每个新请求而增加。实时字节始终保持在 10mb 以下。

那么我是否有内存问题? Memory Utilized 疯狂增长,但 Live Bytes 表明一切正常。

【问题讨论】:

    标签: xcode memory restkit


    【解决方案1】:

    您可以使用Heapshot Analysis 来评估情况。如果这显示没有增长,那么内存消耗可能是虚拟内存,它可能(例如)驻留在可能支持驱逐和重新创建的缓存/存储中 - 因此您还应该确定虚拟内存区域的增长。

    如果您继续发出请求(例如尝试 200 次刷新),内存可能会在某个时候减少 - 或者您会收到内存警告,最终分配请求可能会失败。如果是这种情况,请确定如何减少内存。否则,您将需要确定它的创建位置和可能引用的位置。

    另外,在这种情况下,在设备上进行测试。模拟器能够使用比设备更多的内存,这仅仅是因为它有更多的工作要做。不模拟内存限制。

    【讨论】:

    • 该问题要求对所显示的内容进行回答。
    • @Zaph 对,但 OP 需要知道如何深入挖掘以及从何处获取该信息。我可以尝试在这里重现问题,但我只是不认为这是一个很好的 Q/A 工作比。
    猜你喜欢
    • 2014-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-23
    • 2012-03-30
    • 2011-05-03
    • 2010-09-18
    • 2013-01-22
    相关资源
    最近更新 更多