任何人都可以解释一下下面的堆栈跟踪是什么意思吗? 接下来发生的事情是后台线程使用
调用UIThread上的方法dispatch_sync(dispatch_get_main_queue(), ^{
[self setupLaufbandBottom];
});
第8行的堆栈跟踪是它被调用的地方,这就是我理解它的程度。 但是系统在第1-7行做了什么?它为什么会崩溃?而对我来说奇怪的是,没有任何代码来自应用程序的代码,它是所有系统的东西。
答案 0 :(得分:0)
当CAAnimation
击中它dealloc
时,看起来它崩溃了,所以当它被释放时。 (第2行)。
第4行正在某处释放CoreFoundation
个对象。
如果没有更多信息,我的第一个猜测就是你在Quartz上做的事情被过度发布了。要进行调试,我会使用带有内存泄漏模板的Instruments,并在使用Quartz进行任何绘图或动画处理时运行应用程序。
答案 1 :(得分:0)
在崩溃日志中
5 QuartzCore 0x... _ZN2CA5Layer23run_animation_callbacksEPv
该行意味着您正在使用CALayer动画完成块,委托或类似的东西。也许是UIView动画。例如,CABasicAnimation和animationDidStop:finished:。但是,当动画结束时,委托对象已经被释放了。