尝试修复崩溃:QuartzCore - CA::release_objects(X::List<void const*>*)



我们的应用程序遇到了几次崩溃,想看看你们中是否有人可能有一些见解或有类似的经历。我在下面分享了崩溃日志信息。

运行 iOS 8.1。 我们已经通过仪器、静态分析器运行了它,并且仍在努力查明问题所在。

QuartzCore
CA::release_objects(X::List<void const*>*)
13
Crashed: Thread
EXC_BAD_ACCESS KERN_INVALID_ADDRESS at 0x0042de0f48aa7488

Thread : Crashed: Thread
0  libobjc.A.dylib                0x0000000193debbdc objc_msgSend + 28
1  CoreFoundation                 0x0000000183561228 CFRelease + 524
2  QuartzCore                     0x0000000187788644 CA::release_objects(X::List<void const*>*) +         32
3  QuartzCore                     0x000000018778e498 -[CAAnimation dealloc] + 80
4  libobjc.A.dylib                0x0000000193df1724 (anonymous    namespace)::AutoreleasePoolPage::pop(void*) + 564
5  libobjc.A.dylib                0x0000000193df2754 (anonymous namespace)::AutoreleasePoolPage::tls_dealloc(void*) + 72
6  libsystem_pthread.dylib        0x00000001945fa3e0 _pthread_tsd_cleanup + 200
7  libsystem_pthread.dylib        0x00000001945fa0ac _pthread_exit + 140
8  libsystem_pthread.dylib        0x00000001945fb330 pthread_exit + 44
9  Foundation                     0x0000000184487000 -[NSObject(NSThreadPerformAdditions) performSelectorOnMainThread:withObject:waitUntilDone:]
10 Foundation                     0x0000000184555c24 __NSThread__main__ + 1096
11 libsystem_pthread.dylib        0x00000001945fbe80 _pthread_body + 164
12 libsystem_pthread.dylib        0x00000001945fbddc _pthread_body

这里的问题是你正在对 Core Animation 没有预料到的对象执行一个额外的发布,所以问题在你的代码中引入,但在动画框架执行清理阶段时暴露出来。

若要解决此问题,请使用性能分析。 选择"分配探查器",然后单击"启动堆分配的配置"下的"记录引用计数"。

然后,当遇到问题时,您将能够看到分配历史记录,并且一个版本将不会配对,并且已从您的一个源代码文件发出。

相关内容

最新更新