【发布时间】:2011-08-09 00:34:22
【问题描述】:
我发现在我的应用程序在后台运行了一段时间后,(半小时 + 可能)它会在恢复时立即崩溃。
崩溃日志显示它是 EXC_BAD_ACCESS,但我不知道如何调试这个,因为我不知道当我的应用程序进入后台时会释放什么(特别是很长一段时间)。 (异常代码0x0000000重复)
是否有关于此的任何文档/任何人都可以提供有关他们过去为解决此问题所做的工作的见解吗?
当我们这样做时,有没有一种方法可以在每次尝试前无需等待数小时来测试它?有什么方法可以模拟我的应用发生的任何事情?
谢谢
更新
我只是仔细阅读了一下,这里有一些关于计时器的内容,我最近在我的应用中添加了一些使用计时器的东西,这可以提供更多信息吗? (见第 12 条)
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libsystem_kernel.dylib 0x32858a1c __pthread_kill + 8
1 libsystem_c.dylib 0x337013b4 pthread_kill + 52
2 libsystem_c.dylib 0x336f9bf8 abort + 72
3 libstdc++.6.dylib 0x30504a64 __gnu_cxx::__verbose_terminate_handler() + 376
4 libobjc.A.dylib 0x3068f06c _objc_terminate + 104
5 libstdc++.6.dylib 0x30502e36 __cxxabiv1::__terminate(void (*)()) + 46
6 libstdc++.6.dylib 0x30502e8a std::terminate() + 10
7 libstdc++.6.dylib 0x30502f5a __cxa_throw + 78
8 libobjc.A.dylib 0x3068dc84 objc_exception_throw + 64
9 MarsCrash 0x0000be88 0x1000 + 44680
10 MarsCrash 0x00020646 0x1000 + 128582
11 Foundation 0x327196ce __NSFireDelayedPerform + 362
12 CoreFoundation 0x334e7a40 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
13 CoreFoundation 0x334e9ec4 __CFRunLoopDoTimer + 844
14 CoreFoundation 0x334ea83e __CFRunLoopRun + 1082
15 CoreFoundation 0x3347aebc CFRunLoopRunSpecific + 224
16 CoreFoundation 0x3347adc4 CFRunLoopRunInMode + 52
17 GraphicsServices 0x311a5418 GSEventRunModal + 108
18 GraphicsServices 0x311a54c4 GSEventRun + 56
19 UIKit 0x31b90d62 -[UIApplication _run] + 398
20 UIKit 0x31b8e800 UIApplicationMain + 664
21 MarsCrash 0x00002558 0x1000 + 5464
22 MarsCrash 0x00002500 0x1000 + 5376
【问题讨论】:
标签: iphone background-process uiapplicationdelegate