【发布时间】:2013-08-21 16:32:12
【问题描述】:
我的应用程序是 ARC abide 应用程序,但我仍然在崩溃报告中看到多次崩溃并显示消息“尝试取消引用垃圾指针”。他们很难诊断。
我的问题是为什么应用程序会因为内存问题而崩溃,即使我们在 ARC 上并且我们无法用相同的步骤重现它。如何处理此类崩溃?
一个这样的崩溃报告如下:
CrashReporterKey:896d0c8676c0e02eb292865a654825359de4d427 硬件型号:iPod4,1 版本:5510 (3.0.0) 操作系统版本:iPhone OS 6.1.3 (10B329) 日期/时间:2013-08-15 09:50:51.000 -0700 固件版本:2.27.0 报告版本:104
异常类型:EXC_BAD_ACCESS (SIGSEGV) 异常代码: 0x31fd4078 处的 KERN_INVALID_ADDRESS 线程崩溃:0
线程 0 名称:调度队列:com.apple.main-thread 线程 0 崩溃:0 libobjc.A.dylib 0x3b1ac5b0 objc_msgSend + 16 1 UIKit 0x3533c350 0x35338000 + 17232 2 UIKit 0x3533b6c8 0x35338000 + 14024 3
UIKit 0x3533b118 0x35338000 + 12568 4
图形服务 0x3702d5a0 0x37027000 + 26016 5
图形服务 0x3702d1d0 0x37027000 + 25040 6
核心基础 0x33508170 0x33471000 + 618864 7
核心基础 0x33508110 0x33471000 + 618768 8
核心基础 0x33506f98 0x33471000 + 614296 9
核心基础 0x33479eb8 CFRunLoopRunSpecific + 352 10 核心基础 0x33479d48 CFRunLoopRunInMode + 104 11 图形服务 0x3702c2e8 GSEventRunModal + 72 12 UIKit 0x3538f300 UIApplicationMain + 1120 13 MyApp 0x000a8e58 主 + 20线程 1 名称:调度队列:com.apple.libdispatch-manager 线程 1:0 libsystem_kernel.dylib 0x3b69f648 kevent64 + 24 1
libdispatch.dylib 0x3b5cadf8 0x3b5c7000 + 15864线程 2 名称:WebThread 线程 2:0 WebCore
0x39503560 0x3945d000 + 681312 1 WebCore
0x394e7f90 0x3945d000 + 569232 2 WebCore
0x394e2788 0x3945d000 + 546696 3 WebCore
0x396ca8a8 _ZN7WebCore11FrameLoader16detachFromParentEv + 64 4
WebKit 0x39e12618 0x39d8d000 + 546328 5
WebCore 0x394699c8 0x3945d000 + 51656 6
WebKit 0x39e12490 0x39d8d000 + 545936 7
WebKit 0x39e18570 0x39d8d000 + 570736 8
WebKit 0x39e184a8 0x39d8d000 + 570536 9
网络核心 0x394fb850 0x3945d000 + 649296 10 核心基础 0x33508680 0x33471000 + 620160 11 核心基础 0x33507ee8 0x33471000 + 618216 12 核心基础 0x33506cb0 0x33471000 + 613552 13 核心基础 0x33479eb8 CFRunLoopRunSpecific + 352 14 核心基础 0x33479d48 CFRunLoopRunInMode + 104 15 网络核心 0x39467500 0x3945d000 + 42240 16 libsystem_c.dylib 0x3b608310 0x3b5f7000 + 70416线程 3 名称:CommRunLoop 线程 3:0
libsystem_kernel.dylib 0x3b6af6a4 __semwait_signal + 24 1
基础 0x33decc60 0x33d99000 + 343136 2
MyApp 0x002be680 -[CommRunLoop runLoopThread:] + 504 3 基础 0x33e49e80 0x33d99000 + 724608 4 libsystem_c.dylib 0x3b608310 0x3b5f7000 + 70416线程 4 名称:com.apple.CFSocket.private 线程 4:0
libsystem_kernel.dylib 0x3b6af594 选择$DARWIN_EXTSN + 20 1 libsystem_c.dylib 0x3b608310 0x3b5f7000 + 70416线程 5:0 libsystem_kernel.dylib 0x3b6af6a4 __semwait_signal + 24 1 基础 0x33decc60 0x33d99000 + 343136 2 MyApp 0x00333580 -[KSCrashDeadlockMonitor runMonitor] + 244 3 基础 0x33e49e80 0x33d99000 + 724608 4 libsystem_c.dylib
0x3b608310 0x3b5f7000 + 70416线程 6 名称:KSCrash 异常处理程序(辅助)线程 6:0
libsystem_kernel.dylib 0x3b69eeb4 mach_msg_trap + 20 1
MyApp 0x0032f710 ksmachexc_i_handleExceptions + 124 2 libsystem_c.dylib 0x3b608310 0x3b5f7000 + 70416线程 7 名称:KSCrash 异常处理程序(主)线程 7:
线程 8 名称:com.apple.NSURLConnectionLoader 线程 8:0
libsystem_kernel.dylib 0x3b69eeb4 mach_msg_trap + 20 1
核心基础 0x33508040 0x33471000 + 618560 2
核心基础 0x33506da0 0x33471000 + 613792 3
核心基础 0x33479eb8 CFRunLoopRunSpecific + 352 4 核心基础 0x33479d48 CFRunLoopRunInMode + 104 5 基础 0x33dc63d0 0x33d99000 + 185296 6 基础 0x33e49e80 0x33d99000 + 724608 7
libsystem_c.dylib 0x3b608310 0x3b5f7000 + 70416线程 9 名称:JavaScriptCore::BlockFree 线程 9:0
libsystem_kernel.dylib 0x3b6af08c __psynch_cvwait + 24 1
libsystem_c.dylib 0x3b600aa0 pthread_cond_timedwait + 40 2 JavaScriptCore 0x37422c70 _ZN3WTF15ThreadCondition9timedWaitERNS_5MutexEd + 104 3 JavaScriptCore 0x37534550 0x373c7000 + 1496400 4
JavaScriptCore 0x37546fa8 0x373c7000 + 1572776 5
libsystem_c.dylib 0x3b608310 0x3b5f7000 + 70416线程 10 名称:调度队列:com.apple.root.background-priority 线程 10:0 MyApp 0x00320a18 +[KSCrashReportFilterAppleFmt filterWithReportStyle:] + 0 1 libdispatch.dylib 0x3b5c9118 0x3b5c7000 + 8472 2
libdispatch.dylib 0x3b5d7258 0x3b5c7000 + 66136 3
libdispatch.dylib 0x3b5d73b8 0x3b5c7000 + 66488 4
libsystem_c.dylib 0x3b5fda10 0x3b5f7000 + 27152线程 11:0 libsystem_kernel.dylib 0x3b6afd98 __workq_kernreturn + 8 1 libsystem_c.dylib 0x3b5fda10 0x3b5f7000 + 27152
线程 12:0 libsystem_kernel.dylib 0x3b6afd98 __workq_kernreturn + 8 1 libsystem_c.dylib 0x3b5fda10 0x3b5f7000 + 27152
线程 13:0 libsystem_kernel.dylib 0x3b6afd98 __workq_kernreturn + 8 1 libsystem_c.dylib 0x3b5fda10 0x3b5f7000 + 27152
线程 0 因 ARM 线程状态而崩溃: r0: 0x1fd2a130 r1: 0x357e82c0 r2: 0x1fd3a6d0 r3: 0x20a8a4a0 r4:0x31fd4070 r5:0x20a8a4a0 r6:0x2fd59a10 r7:0x2fd599f8 r8:0x20a8af20 r9:0x0d5fa0b0 r10:0xbecb6c00 r11:0x1fd3a6d0 ip: 0x3bb2bd64 sp: 0x2fd599c8 lr: 0x355abb97 pc: 0x3b1ac5b0 cpsr: 0x20000030
额外信息:
堆栈转储 (0x2fd599a0-0x2fd59a18):
A8B4BC3B209FF240B499D52FADD81A3BA8B4BC3BC099D52F45D91A3BD0A6D31FC899D52FF1D01B3BA0A4A820D0A6D31F000000000020B23F00000000806DD9BF00000000E073ECBF0000000000000000009F63BF209FF240789AD52F51C3333500000000806DD9BF00000000E073ECBFDA1B7C21209FF240 P>
著名地址:{ “r1”:{ “地址”:897483456, “类型”:“字符串”, “值”:“加速度计:didAccelerate:” }, “r11”:{ “地址”:533964496, "class": "UIAccelerometer", “伊瓦尔”:{ “_代表”: { “地址”:533897520, “类型”:“未知” }, “_updateInterval”:0.1 }, “类型”:“objc_object” }, “r2”:{ “地址”:533964496, "class": "UIAccelerometer", “伊瓦尔”:{ “_代表”: { “地址”:533897520, “类型”:“未知” }, “_updateInterval”:0.1 }, “类型”:“objc_object” }, “r3”:{ “地址”:547923104, "class": "UIAcceleration", “伊瓦尔”:{ “时间戳”:76274, “x”:0.0708008, “y”:-0.397308, “z”:-0.889145 }, “类型”:“objc_object” }, “r5”:{ “地址”:547923104, "class": "UIAcceleration", “伊瓦尔”:{ “时间戳”:76274, “x”:0.0708008, “y”:-0.397308, “z”:-0.889145 }, “类型”:“objc_object” }, “r8”:{ “地址”:547925792, "class": "__NSCFType", “ivars”:{}, “类型”:“objc_object” }, “堆栈@0x2fd599a0”:{ “地址”:1002222760, "class": "UIAcceleration", “类型”:“objc_class” }, “堆栈@0x2fd599b0”:{ “地址”:1002222760, "class": "UIAcceleration", “类型”:“objc_class” }, “堆栈@0x2fd599bc”:{ “地址”:533964496, "class": "UIAccelerometer", “伊瓦尔”:{ “_代表”: { “地址”:533897520, “类型”:“未知” }, “_updateInterval”:0.1 }, “类型”:“objc_object” }, “堆栈@0x2fd599c8”:{ “地址”:547923104, "class": "UIAcceleration", “伊瓦尔”:{ “时间戳”:76274, “x”:0.0708008, “y”:-0.397308, “z”:-0.889145 }, “类型”:“objc_object” }, “堆栈@0x2fd599cc”:{ “地址”:533964496, "class": "UIAccelerometer", “伊瓦尔”:{ “_代表”: { “地址”:533897520, “类型”:“未知” }, “_updateInterval”:0.1 }, “类型”:“objc_object” } }
CrashDoctor 诊断:尝试取消引用垃圾指针 0x31fd4078.
【问题讨论】:
标签: iphone ios xcode cocoa-touch crash-reports