Mar*_*ell 35 crash debugging xcode ios xcode-instruments
很难跟踪iPad应用程序中的崩溃.这个困难的真正原因是当应用程序失败时没有错误或堆栈跟踪.它就像Keiser Soze一样消失,"就像那样,噗.他走了."
我已经在模拟器和设备上复制了崩溃.设备日志为零,控制台中没有任何内容,等等.
我知道在崩溃期间,一些CoreGraphics
操作正在后台线程中发生.通常,三个左右的NSOperations正在踢一些图像混合.
混合包含CGContext*调用(DrawImage,SetBlendMode,SetAlpha等).NSOperation回调主线程中的委托来处理图像并将其设置为UIImage
,因此它不应该是UI主线程冲突,但此时我不打算任何折扣.
我是否缺少一些Xcode技巧来追踪究竟发生了什么?或者至少可以更好地了解问题所在?
编辑我已经在仪器中运行应用程序跟踪内存使用情况,看到它在2MB左右稳定稳定.所以,不要认为这是一个记忆问题.但经过考虑,这块岩石稳定2MB似乎异常低落.有没有机会仪器没有获得CoreGraphics分配?
shr*_*ter 26
尝试阅读寄存器.
每当我的应用程序崩溃而没有错误时,在大多数情况下我都在寄存器中找到了异常.
首先使用左下角的+转到Exceptions选项卡和'Add Exception Breakpoint'.
然后当应用程序崩溃时单击线程1下的"0 objc_exception_throw"
最后在控制台中输入:
po $ rax(通常是'rax'中的例外)
(您应该在控制台上看到异常输出)
希望这可以帮助.
归档时间: |
|
查看次数: |
21039 次 |
最近记录: |