gpt4 book ai didi

iphone - 在 CocoaTouch (iPhone OS) 中,如何查找/消除 Instruments Leak 工具未找到的泄漏?

转载 作者:行者123 更新时间:2023-12-03 19:04:04 25 4
gpt4 key购买 nike

我有一个 iPhone 应用程序,在模拟器中运行得很好。它通过删除所有不是绝对必要的东西来很好地响应内存警告。当我在设备上运行它时,它运行良好。但在使用一定量后,它会崩溃并显示错误代码 101 - 据我所知,这是操作系统由于内存使用而杀死了它。我可以看到内存警告(我正在记录它),我的应用程序对其做出响应,但此后不久就死掉了。

如果我在 Instruments 中查看该应用程序(无论是在设备上还是在 sim 中),它没有发现任何泄漏。此外,净内存使用量在600-700k字节范围内。从我的应用程序的不同 View 进行转换会增加内存使用量(如预期),但是当释放和释放 View 和 Controller 时,内存使用量永远不会像以前那样低。然而,添加的内容通常仅在 1000-2000 字节范围内。因此,虽然 Leaks 没有显示任何泄漏,但我怀疑某个地方存在问题。我还查看了我分配的所有对象,所有这些对象似乎都按预期被回收。我看到唯一不断增加的对象是 GeneralBlock-N(其中 N 是某个数字)

我不应该关注 Instruments 的净使用数据吗?尝试诊断问题的下一步是什么?

添加:我不会对 malloc() 或任何会返回我负责的缓冲区的 CoreFoundation 库进行任何调用。我所做的唯一非 Obj-C 调用是将语句记录到 NSLog。

最佳答案

快速尝试的一件事是运行 Clang static analyzer 。这将发现您的代码中可能遗漏的一些(但不是全部)问题。它在编译时检查代码,因此它绝不是绝对正确的,但几乎肯定会发现最明显的问题。

关于iphone - 在 CocoaTouch (iPhone OS) 中,如何查找/消除 Instruments Leak 工具未找到的泄漏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/281764/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com