Странная проблема управления памятью - PullRequest
0 голосов
/ 11 марта 2010

Я не могу определить освобождаемый объект, я запускаю свое приложение с помощью Command + Y, но, несмотря на то, что для MallocStackLogging установлено значение YES, а для NSZombieEnabled установлено значение YES, когда я нажимаю EXC_BAD_ACCESS в моем приложении, gdb не печатает адрес памяти освобожденного объекта. Есть идеи?

Извинения, если это кажется расплывчатым, похоже, что оно связано с Базовыми данными, если кто-то может дать глубокий анализ результатов, я был бы очень признателен. Спасибо

Вот трассировка стека при сбое:

#0  0x933b4edb in objc_msgSend
#1  0x08c46040 in ??
#2  0x01f3c6c9 in __CFSetDeallocate
#3  0x01f23a41 in _CFRelease
#4  0x01dd9977 in -[_NSFaultingMutableSet dealloc]
#5  0x01dcb892 in -[NSManagedObject(_NSInternalMethods) _clearRawPropertiesWithHint:]
#6  0x01dcb5ed in -[NSFaultHandler turnObject:intoFaultWithContext:]
#7  0x01dccd8c in -[NSManagedObject dealloc]
#8  0x01db0315 in -[_PFManagedObjectReferenceQueue _processReferenceQueue:]
#9  0x01ddd9ba in _performRunLoopAction
#10 0x01f65252 in __CFRunLoopDoObservers
#11 0x01f6465f in CFRunLoopRunSpecific
#12 0x01f63c48 in CFRunLoopRunInMode
#13 0x0268b615 in GSEventRunModal
#14 0x0268b6da in GSEventRun
#15 0x002a7faf in UIApplicationMain
#16 0x00002b60 in main at main.m:13

1 Ответ

3 голосов
/ 11 марта 2010

Запустите Clang Static Analyzer (меню «Сборка Xcode» >> «Построить и проанализировать») и проверьте, не обнаружены ли какие-либо проблемы.

Вчера у меня была проблема «EXC_BAD_ACCESS» в одном из моих приложений, и у меня был NSZombieEnabled, но он не печатал сообщение, поэтому я был озадачен, но статический анализатор обнаружил проблему, когда я выпускал объект, который никогда не сохранялся и исправление, которое решило мою проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...