我的应用程序经常在设备(iPad)上崩溃,但不在模拟器上崩溃,所以任何模拟器调试策略(例如MallocStackLogging)都不是一个选项。我通常在控制台中得到的是:
Received memory warning. Level=1
Received memory warning. Level=2
Program received signal: “0”.
Data Formatters temporarily unavailable, will re-try after a 'continue'. (Unknown error loading shared library "/Developer/usr/lib/libXcodeDebuggerSupport.dylib")
我的问题是,在这一点上,我能做些什么来找出导致崩溃的确切原因?显然这是一个记忆问题,但我很难找到原因。这是泄漏吗?分配太多了?除了“使用Performance Tool> Leaks”之外,我还能做些什么来追踪问题吗?
答案 0 :(得分:3)
另一个好工具是静态分析器。只需单击 Build 菜单中的 Build and Analyze ,它就会向您显示许多内存泄漏之间的内容。
查看Apple Developer Document以获取有关如何阅读结果的更多说明。
答案 1 :(得分:1)
使用仪器查看你的所有记忆力。
我首先使用使用Performance Tool运行 - >分配
另外,我发现 Leaks 非常保守。我没有看到 Leaks 中的一个误报,但我发现了很多 Leaks 没有检测到的漏洞。