Ios5 神秘的坠机事件多次发生,有奇怪的痕迹
我在app store上获得了这个应用程序,在10天内我获得了6000多个崩溃!我在HockeyApp上看到的stacktrace非常神秘,根据iOS版本(5或6),我还得到了两个不同的stacktrace,但我很确定它们都是相同的崩溃。 你觉得这个怎么样?我应该在哪里捕捉虫子?不用说,我无法复制它 iOS 6 谢谢 编辑:多亏了DDPerformDebugger.m,我终于解决了这个问题 崩溃是由客户提供的第三方框架造成的。Ios5 神秘的坠机事件多次发生,有奇怪的痕迹,ios5,ios6,crash,segmentation-fault,Ios5,Ios6,Crash,Segmentation Fault,我在app store上获得了这个应用程序,在10天内我获得了6000多个崩溃!我在HockeyApp上看到的stacktrace非常神秘,根据iOS版本(5或6),我还得到了两个不同的stacktrace,但我很确定它们都是相同的崩溃。 你觉得这个怎么样?我应该在哪里捕捉虫子?不用说,我无法复制它 iOS 6 谢谢 编辑:多亏了DDPerformDebugger.m,我终于解决了这个问题 崩溃是由客户提供的第三方框架造成的。 谢谢大家您的应用程序似乎存在内存和线程问题。应用程序正在尝试向已解除
谢谢大家您的应用程序似乎存在内存和线程问题。应用程序正在尝试向已解除分配的对象发送消息(方法)
两个堆栈跟踪都提示线程的使用。看起来您正在后台线程中执行一些工作,然后向不再存在的对象(在主线程上?)发送消息。因此,检查背景线程的堆栈跟踪并查看它们正在执行的操作可能会有所帮助。您可能希望尝试其他So问题中提到的一些技巧。我在背景线程中做了大量工作。。。我编辑了这个问题,把它们的堆栈跟踪也包括在内,但它们并没有真正的帮助。。。尽管如此,我还是无法重现这次坠机,即使我能重现,我也不知道原因:(您是否从任何后台线程调用主线程,并在主线程上的某个对象上调用某个方法?当然,我从后台线程调用主线程…代码库是75 KLOC..我只是将DDPerformDebugger.m包含在从中获取的项目中,希望如果崩溃再次出现,我会知道在哪里搜索pro问题不在于您调用的对象不理解选择器,而是对象不再存在。因此,您正在某个线程上释放对象,导致该对象被释放,但后台线程稍后尝试使用该指针向其发送消息。但由于该指针不存在,因此该操作失败。如果您无法复制在调试版本中,请尝试发布版本。问题出在内存管理的某个地方。是的,我知道,但使用DDPerformDebugger,希望在崩溃之前,我能看到谁调用了performSelector:withObject:并尝试修复它。不幸的是,我们这里的QA人员无法重现该问题:(
Thread 0 Crashed:
0 libobjc.A.dylib 0x3ae395d0 _objc_msgSend + 16
1 Foundation 0x338bc4a1 __NSThreadPerformPerform + 461
2 CoreFoundation 0x32f798f7 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 15
3 CoreFoundation 0x32f791f3 __CFRunLoopDoSources0 + 363
4 CoreFoundation 0x32f77f2f __CFRunLoopRun + 647
5 CoreFoundation 0x32eeb23d _CFRunLoopRunSpecific + 357
6 CoreFoundation 0x32eeb0c9 _CFRunLoopRunInMode + 105
7 GraphicsServices 0x36aa633b _GSEventRunModal + 75
8 UIKit 0x34e072b9 _UIApplicationMain + 1121
9 <REDACTED> 0x00055943 main (main.m:16)
Exception Type: SIGSEGV
Exception Codes: SEGV_ACCERR at 0x736f7477
Crashed Thread: 0
Thread 0 Crashed:
0 libobjc.A.dylib 0x338c8f78 _objc_msgSend + 16
1 CoreFoundation 0x35c091fb -[NSObject performSelector:withObject:] + 43
2 Foundation 0x350d9747 ___NSThreadPerformPerform + 351
3 CoreFoundation 0x35c7ead3 ___CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 15
4 CoreFoundation 0x35c7e335 ___CFRunLoopDoSources0 + 365
5 CoreFoundation 0x35c7d045 ___CFRunLoopRun + 653
6 CoreFoundation 0x35c004a5 _CFRunLoopRunSpecific + 301
7 CoreFoundation 0x35c0036d _CFRunLoopRunInMode + 105
8 GraphicsServices 0x3399b439 _GSEventRunModal + 137
9 UIKit 0x333d8cd5 _UIApplicationMain + 1081
10 <REDACTED> 0x0003f32b main (main.m:16)
Exception Type: SIGSEGV
Exception Codes: SEGV_ACCERR at 0xf10d9e21
Crashed Thread: 0
Thread 1:
0 libsystem_kernel.dylib 0x3568a3a8 _kevent + 24
1 libdispatch.dylib 0x339bdbc9 __dispatch_mgr_wakeup + 1
Thread 2:
0 libsystem_kernel.dylib 0x3569acd4 ___workq_kernreturn + 8
Thread 3:
0 libsystem_kernel.dylib 0x3569acd4 ___workq_kernreturn + 8
Thread 4:
0 libsystem_kernel.dylib 0x3569a0d8 ___psynch_mutexwait + 24
1 WebCore 0x3721d4ef __ZL17_WebTryThreadLockb + 215
2 WebCore 0x3721d7f3 __ZL14WebRunLoopLockP19__CFRunLoopObservermPv + 31
3 CoreFoundation 0x355f8b1b ___CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 19
4 CoreFoundation 0x355f6d57 ___CFRunLoopDoObservers + 259
5 CoreFoundation 0x355f701f ___CFRunLoopRun + 615
6 CoreFoundation 0x3557a4a5 _CFRunLoopRunSpecific + 301
7 CoreFoundation 0x3557a36d _CFRunLoopRunInMode + 105
8 WebCore 0x372c0ca3 __ZL12RunWebThreadPv + 403
9 libsystem_c.dylib 0x34843735 __pthread_start + 321
Thread 5:
0 libsystem_kernel.dylib 0x3569acd4 ___workq_kernreturn + 8
Thread 6:
0 libsystem_kernel.dylib 0x3569acd4 ___workq_kernreturn + 8
Thread 7:
0 libsystem_kernel.dylib 0x3568a004 _mach_msg_trap + 20
1 CoreFoundation 0x355f83f3 ___CFRunLoopServiceMachPort + 127
2 CoreFoundation 0x355f712b ___CFRunLoopRun + 883
3 CoreFoundation 0x3557a4a5 _CFRunLoopRunSpecific + 301
4 CoreFoundation 0x3557a36d _CFRunLoopRunInMode + 105
5 Foundation 0x349bfbb9 +[NSURLConnection(Loader) _resourceLoadLoop:] + 309
6 Foundation 0x349bfa81 -[NSThread main] + 73
7 Foundation 0x34a53591 ___NSThread__main__ + 1049
8 libsystem_c.dylib 0x34843735 __pthread_start + 321
Thread 8:
0 libsystem_kernel.dylib 0x3569acd4 ___workq_kernreturn + 8
Thread 9:
0 libsystem_kernel.dylib 0x3569a570 ___select + 20
1 libsystem_c.dylib 0x34843735 __pthread_start + 321
Thread 10:
0 libsystem_kernel.dylib 0x3569acd4 ___workq_kernreturn + 8
Thread 11:
0 libsystem_kernel.dylib 0x3569acd4 ___workq_kernreturn + 8
Thread 12:
0 libsystem_kernel.dylib 0x3569acd4 ___workq_kernreturn + 8
Thread 13:
0 libsystem_kernel.dylib 0x3569acd4 ___workq_kernreturn + 8
Thread 14:
0 libsystem_kernel.dylib 0x3569acd4 ___workq_kernreturn + 8
Thread 15:
0 libsystem_kernel.dylib 0x3569acd4 ___workq_kernreturn + 8
Thread 16:
0 libsystem_kernel.dylib 0x3569acd4 ___workq_kernreturn + 8
Thread 17:
0 libsystem_kernel.dylib 0x3569acd4 ___workq_kernreturn + 8
Thread 0 crashed with ARM Thread State:
r0: 0x10910cc0 r1: 0x322194f6 r2: 0x00482a7a r3: 0x00000000
r4: 0xf10a6823 r5: 0x00481a7a r6: 0x33102823 r7: 0x2fef2e54
r8: 0x00482a7a r9: 0x0c88653d r10: 0x3efac9b4 r11: 0x00000000
ip: 0x004a710c sp: 0x2fef2e38 lr: 0x00315cf3 pc: 0x33242f78
cpsr: 0x20080030