控制台信息:
2015-11-15 23:26:42.824 SWPi2[1564:476501] *** -[__NSCFConstantString length]: message sent to deallocated instance 0x110d868a0
bt:
* thread #1: tid = 0x74555, 0x0000000110a9beaf CoreFoundation`___forwarding___ + 767, queue = 'com.apple.main-thread', stop reason = EXC_BREAKPOINT (code=EXC_I386_BPT, subcode=0x0)
* frame #0: 0x0000000110a9beaf CoreFoundation`___forwarding___ + 767
frame #1: 0x0000000110a9bb28 CoreFoundation`__forwarding_prep_0___ + 120
frame #2: 0x0000000110a1abfc CoreFoundation`CFURLCreateStringByReplacingPercentEscapes + 60
frame #3: 0x0000000110a5cec6 CoreFoundation`URLPathToPOSIXPath + 38
frame #4: 0x0000000110a1a1e7 CoreFoundation`CFURLCreateStringWithFileSystemPath + 439
frame #5: 0x0000000110a16f2c CoreFoundation`CFURLCopyFileSystemPath + 364
frame #6: 0x0000000110b05b25 CoreFoundation`extractQuadrupleFromPathIfPossible + 1221
frame #7: 0x0000000110b3f8c9 CoreFoundation`+[CFPrefsSearchListSource withSearchListForIdentifier:container:perform:] + 185
frame #8: 0x0000000110b2d017 CoreFoundation`_CFPreferencesCopyAppValueWithContainer + 183
frame #9: 0x0000000117a4f134 libAccessibility.dylib`_copyValuePreference + 138
frame #10: 0x0000000117a4ee14 libAccessibility.dylib`_getBooleanPreference + 24
frame #11: 0x0000000117a52312 libAccessibility.dylib`_AXSQuickSpeakEnabled + 76
frame #12: 0x000000010f0d57ad UIKit`-[UIApplication(UIKitApplicationAccessibility) _accessibilitySetUpQuickSpeak] + 79
frame #13: 0x00000001101a7129 Foundation`__NSFireDelayedPerform + 402
frame #14: 0x0000000110aa6364 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20
frame #15: 0x0000000110aa5f11 CoreFoundation`__CFRunLoopDoTimer + 1089
frame #16: 0x0000000110a678b1 CoreFoundation`__CFRunLoopRun + 1937
frame #17: 0x0000000110a66e98 CoreFoundation`CFRunLoopRunSpecific + 488
frame #18: 0x0000000111bf8ad2 GraphicsServices`GSEventRunModal + 161
frame #19: 0x000000010ecd6676 UIKit`UIApplicationMain + 171
frame #20: 0x000000010deb1c41 SWPi2`main(argc=1, argv=0x00007fff51def770) + 129 at main.m:7
frame #21: 0x000000011255b92d libdyld.dylib`start + 1
线程转发:
0x110a9bc80 <+208>: movq %rbx, -0x40(%rbp)
0x110a9bc84 <+212>: leaq 0x2a3a0d(%rip), %rsi ; "_NSZombie_"
0x110a9bc8b <+219>: movl $0xa, %edx
0x110a9bc90 <+224>: movq %r14, %rdi
0x110a9bc93 <+227>: callq 0x110ba403c ; symbol stub for: strncmp
0x110a9bc98 <+232>: testl %eax, %eax
0x110a9bc9a <+234>: je 0x110a9be63 ; <+691>
0x110a9bca0 <+240>: movq 0x2ca1c1(%rip), %rsi ; "methodSignatureForSelector:"
0x110a9bca7 <+247>: movq %r12, %rdi
0x110a9bcaa <+250>: callq 0x110ba37e4 ; symbol stub for: class_respondsToSelector
0x110a9bcaf <+255>: testb %al, %al
0x110a9bcb1 <+257>: movq -0x40(%rbp), %r14
0x110a9bcb5 <+261>: movq -0x38(%rbp), %r13
0x110a9bcb9 <+265>: je 0x110a9beb4 ; <+772>
0x110a9bcbf <+271>: movq 0x2ca1a2(%rip), %rsi ; "methodSignatureForSelector:"
0x110a9bcc6 <+278>: movq %r14, %rdi
0x110a9bcc9 <+281>: movq -0x30(%rbp), %rdx
0x110a9bccd <+285>: callq *0x2dc525(%rip) ; (void *)0x00000001105d3800: objc_msgSend
0x110a9bcd3 <+291>: movq %rax, %r12
0x110a9bcd6 <+294>: testq %r12, %r12
0x110a9bcd9 <+297>: je 0x110a9bf11 ; <+865>
0x110a9bcdf <+303>: movq 0x2ca152(%rip), %rsi ; "_frameDescriptor"
0x110a9bce6 <+310>: movq %r12, %rdi
0x110a9bce9 <+313>: callq *0x2dc509(%rip) ; (void *)0x00000001105d3800: objc_msgSend
0x110a9bcef <+319>: movq %rax, %rbx
0x110a9bcf2 <+322>: movq (%rbx), %rax
0x110a9bcf5 <+325>: movzwl 0x22(%rax), %eax
0x110a9bcf9 <+329>: shrl $0x6, %eax
0x110a9bcfc <+332>: andq $0x1, %rax
0x110a9bd00 <+336>: cmpq %r13, %rax
0x110a9bd03 <+339>: je 0x110a9bd49 ; <+409>
0x110a9bd05 <+341>: movq -0x30(%rbp), %rdi
0x110a9bd09 <+345>: callq 0x110ba38ec ; symbol stub for: sel_getName
0x110a9bd0e <+350>: movq %rax, %rdx
0x110a9bd11 <+353>: movq (%rbx), %rax
0x110a9bd14 <+356>: movzwl 0x22(%rax), %eax
0x110a9bd18 <+360>: leaq 0x29b169(%rip), %rsi ; ""
0x110a9bd1f <+367>: leaq 0x2aa161(%rip), %r8 ; " not"
0x110a9bd26 <+374>: testb $0x40, %al
0x110a9bd28 <+376>: movq %r8, %rcx
0x110a9bd2b <+379>: cmovneq %rsi, %rcx
0x110a9bd2f <+383>: testq %r13, %r13
0x110a9bd32 <+386>: cmovneq %rsi, %r8
0x110a9bd36 <+390>: leaq 0x2f1983(%rip), %rsi ; @"*** NSForwarding: warning: method signature and compiler disagree on struct-return-edness of '%s'. Signature thinks it does%s return a struct, and compiler thinks it does%s."
0x110a9bd3d <+397>: movl $0x4, %edi
0x110a9bd42 <+402>: xorl %eax, %eax
Profiler在没有僵尸标志的地方停留。
如何在源代码中本地化 NSZombie ?