Zombie NS zjadają mózg mojej aplikacji!

Mam problem z zachowaniem / zwolnieniem. Mój widok jest dość skomplikowany, więc ustawiłem NSZombieEnabled na TAK i próbuję zlokalizować, który dokładnie obiekt wywołuje u mnie żal. Aby przyspieszyć ten proces, zastanawiam się, czy istnieją wskazówki lub sztuczki, które pozwolą nam śledzić Zombie z powrotem do grobu, z którego wyszli z (przepraszam, musieli) lub z powrotem do obiektu, z którym są powiązani? Tajemnicza wiadomość konsoli nie wydaje się zapewniać wglądu:

NSInvocation: warning: object 0x1076850 of class '_NSZombie_CALayer' does not implement methodSignatureForSelector: -- trouble ahead

Nie mam selektorów zwanych „kłopotami z wyprzedzeniem”.

Edytować - W tym śledzenia stosu:

#0  0x3026e017 in ___forwarding___
#1  0x3024a0a2 in __forwarding_prep_0___
#2  0x302042e8 in CFRelease
#3  0x00c4fc31 in CALayerUpdateSublayers
#4  0x00c4e173 in -[CALayer dealloc]
#5  0x00c4000e in CALayerRelease
#6  0x00c48dad in CALayerFreeTransaction
#7  0x00c410b8 in CA::Transaction::commit
#8  0x00c492e0 in CA::Transaction::observer_callback
#9  0x30245c32 in __CFRunLoopDoObservers
#10 0x3024503f in CFRunLoopRunSpecific
#11 0x30244628 in CFRunLoopRunInMode
#12 0x32044c31 in GSEventRunModal
#13 0x32044cf6 in GSEventRun
#14 0x309021ee in UIApplicationMain
#15 0x00001eb4 in main at main.m:14

Edytuj 2: ObjectAlloc

Sprawdzając adres pamięci, o którym mowa w ObjectAlloc, znajduję dwa dopasowania:

#    Address     Category           Creation Time      Size Responsible Library Responsible Caller
0   0x1076980   GeneralBlock-48    00:11.470       48      QuartzCore  -[CALayer setDelegate:]
1   0x1076980   CALayer            00:11.552       48      UIKit       -[UIView _createLayerWithFrame:]

Kopanie w # 0 GeneralBlock-48:

#   Category        Event Type  Timestamp   Address Size    Responsible Library Responsible Caller
0   GeneralBlock-48 Malloc      00:11.470   0x1076980   48  QuartzCore  -[CALayer setDelegate:]
1   GeneralBlock-48 Free        00:11.551   0x1076980   -48 QuartzCore  -[CALayer addAnimation:forKey:]
2   CALayer         Malloc      00:11.552   0x1076980   48  UIKit   -[UIView _createLayerWithFrame:]

Kopanie w # 1 CALayer:

#   Category        Event Type  Timestamp   Address    Size Responsible Library Responsible Caller
0   GeneralBlock-48 Malloc      00:11.470   0x1076980   48  QuartzCore  -[CALayer setDelegate:]
1   GeneralBlock-48 Free        00:11.551   0x1076980   -48 QuartzCore  -[CALayer addAnimation:forKey:]
2   CALayer         Malloc      00:11.552   0x1076980   48  UIKit   -[UIView _createLayerWithFrame:]

Widzę teraz, że wiercenie głębiej w # 0 lub # 1 ujawnia dokładnie te same informacje. Przypuszczam, że powinno to rozwiązać problem na pół ... ale wciąż nie mogę ...

questionAnswers(3)

yourAnswerToTheQuestion