“未能及时恢复”从后台崩溃恢复时
好的,转到后台,我隐藏了所有内容。当我切换回来时,我仍然收到未能及时恢复的错误。如果所有内容都隐藏了,为什么在drawRect中会崩溃?关于如何处理这样的“无法恢复”错误有什么想法吗?
Incident Identifier: 0E5ADFDF-1EB1-4ECC-9F02-57B37F1BBBA1
CrashReporter Key: 17186e938075dd5907223199eccdc85176f18698
Hardware Model: iPad1,1
Process: hexProto [2162]
Path: /var/mobile/Applications/31D43A9F-0EF3-4D03-89AC-243B68F75D91/hexProto.app/hexProto
Identifier: hexProto
Version: ??? (???)
Code Type: ARM (Native)
Parent Process: launchd [1]
Date/Time: 2010-12-10 15:56:11.615 -0800
OS Version: iPhone OS 4.2 (8C134)
Report Version: 104
Exception Type: 00000020
Exception Codes: 0x8badf00d
Highlighted Thread: 0
Application Specific Information:
Annexation failed to resume in time
Elapsed total CPU time (seconds): 9.880 (user 7.320, system 2.560), 97% CPU
Elapsed application CPU time (seconds): 7.650, 75% CPU
Thread 0:
0 ImageIO 0x00009740 ImageIO_ABGR_TO_ARGB_8Bit + 44
1 ImageIO 0x00006ade ImageProviderCopyImageBlockSetCallback + 210
2 CoreGraphics 0x00009052 CGImageProviderCopyImageBlockSetWithOptions + 226
3 CoreGraphics 0x00008f5c CGImageProviderCopyImageBlockSet + 32
4 CoreGraphics 0x00008c8a img_blocks_create + 182
5 CoreGraphics 0x00025e1a img_blocks_extent + 42
6 CoreGraphics 0x00025d06 img_interpolate_extent + 70
7 CoreGraphics 0x00004e90 img_data_lock + 4376
8 CoreGraphics 0x00003668 CGSImageDataLock + 104
9 libRIP.A.dylib 0x0000c658 ripc_AcquireImage + 2676
10 libRIP.A.dylib 0x00009c6e ripc_DrawImage + 462
11 CoreGraphics 0x00003520 CGContextDelegateDrawImage + 44
12 CoreGraphics 0x000033de CGContextDrawImage + 250
13 UIKit 0x000148aa -[UIImage drawInRect:blendMode:alpha:] + 1182
14 UIKit 0x0003affe -[UIImage drawInRect:] + 50
15 hexProto 0x00047782 -[NormalButton drawRect:] (NormalButton.m:48)
16 UIKit 0x000132d2 -[UIView(CALayerDelegate) drawLayer:inContext:] + 258
17 QuartzCore 0x000152fe -[CALayer drawInContext:] + 86
18 QuartzCore 0x0001507c backing_callback(CGContext*, void*) + 32
19 QuartzCore 0x00014af2 CABackingStoreUpdate + 1226
20 QuartzCore 0x0001435c -[CALayer _display] + 724
21 QuartzCore 0x0001406a -[CALayer display] + 134
22 QuartzCore 0x00013fb0 CALayerDisplayIfNeeded + 176
23 QuartzCore 0x0000956e CA::Context::commit_transaction(CA::Transaction*) + 214
24 QuartzCore 0x0000937c CA::Transaction::commit() + 184
25 QuartzCore 0x000092bc CA::Transaction::pop() + 120
26 QuartzCore 0x0000923a +[CATransaction commit] + 18
ok so on going to background I hide everything. I still get a failed to resume in time error when I switch back. Why is it crashing in drawRect if everything is hidden? Any ideas on how to deal with a "Failed to resume" error like this?
Incident Identifier: 0E5ADFDF-1EB1-4ECC-9F02-57B37F1BBBA1
CrashReporter Key: 17186e938075dd5907223199eccdc85176f18698
Hardware Model: iPad1,1
Process: hexProto [2162]
Path: /var/mobile/Applications/31D43A9F-0EF3-4D03-89AC-243B68F75D91/hexProto.app/hexProto
Identifier: hexProto
Version: ??? (???)
Code Type: ARM (Native)
Parent Process: launchd [1]
Date/Time: 2010-12-10 15:56:11.615 -0800
OS Version: iPhone OS 4.2 (8C134)
Report Version: 104
Exception Type: 00000020
Exception Codes: 0x8badf00d
Highlighted Thread: 0
Application Specific Information:
Annexation failed to resume in time
Elapsed total CPU time (seconds): 9.880 (user 7.320, system 2.560), 97% CPU
Elapsed application CPU time (seconds): 7.650, 75% CPU
Thread 0:
0 ImageIO 0x00009740 ImageIO_ABGR_TO_ARGB_8Bit + 44
1 ImageIO 0x00006ade ImageProviderCopyImageBlockSetCallback + 210
2 CoreGraphics 0x00009052 CGImageProviderCopyImageBlockSetWithOptions + 226
3 CoreGraphics 0x00008f5c CGImageProviderCopyImageBlockSet + 32
4 CoreGraphics 0x00008c8a img_blocks_create + 182
5 CoreGraphics 0x00025e1a img_blocks_extent + 42
6 CoreGraphics 0x00025d06 img_interpolate_extent + 70
7 CoreGraphics 0x00004e90 img_data_lock + 4376
8 CoreGraphics 0x00003668 CGSImageDataLock + 104
9 libRIP.A.dylib 0x0000c658 ripc_AcquireImage + 2676
10 libRIP.A.dylib 0x00009c6e ripc_DrawImage + 462
11 CoreGraphics 0x00003520 CGContextDelegateDrawImage + 44
12 CoreGraphics 0x000033de CGContextDrawImage + 250
13 UIKit 0x000148aa -[UIImage drawInRect:blendMode:alpha:] + 1182
14 UIKit 0x0003affe -[UIImage drawInRect:] + 50
15 hexProto 0x00047782 -[NormalButton drawRect:] (NormalButton.m:48)
16 UIKit 0x000132d2 -[UIView(CALayerDelegate) drawLayer:inContext:] + 258
17 QuartzCore 0x000152fe -[CALayer drawInContext:] + 86
18 QuartzCore 0x0001507c backing_callback(CGContext*, void*) + 32
19 QuartzCore 0x00014af2 CABackingStoreUpdate + 1226
20 QuartzCore 0x0001435c -[CALayer _display] + 724
21 QuartzCore 0x0001406a -[CALayer display] + 134
22 QuartzCore 0x00013fb0 CALayerDisplayIfNeeded + 176
23 QuartzCore 0x0000956e CA::Context::commit_transaction(CA::Transaction*) + 214
24 QuartzCore 0x0000937c CA::Transaction::commit() + 184
25 QuartzCore 0x000092bc CA::Transaction::pop() + 120
26 QuartzCore 0x0000923a +[CATransaction commit] + 18
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用 Instruments(特别是 Shark)来了解发生了什么。
Springboard 杀死你的应用程序的原因是因为你即将超过允许的 10 秒(Apple 似乎从未公布确切的数字,但一般智慧似乎将其固定在 10 秒)。
当程序崩溃时,它可能正在做一些绘图 - 你怎么知道它没有在 8 秒内执行其他任务,然后再进行 1.5 秒的绘图?这就是我使用 Shark 来找出占用 CPU 时间百分比最多的地方。
然后,分析一下,看看可以采取什么措施。
Use Instruments (specifically Shark) to find out what is going on.
The reason Springboard is killing your app is because you are coming close to exceeding the allowed 10 seconds (Apple never seems to publish what the exact number is, but general wisdom seems to have it pegged at 10).
When the program crashes, it may be doing some drawing - how do you know that it's not doing some other task for 8 seconds and then doing drawing for 1.5? That's where I'd use Shark to find out what's taking the most percentage of CPU time.
Then, analyze that to see what can be done about it.