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
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).
Elapsed total CPU time (seconds): 9.880 (user 7.320, system 2.560), 97% CPU
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.
User contributions licensed under CC BY-SA 3.0