Вопрос по ios, iphone – Получение места падения в iOS

0

В моем приложении происходит сбой, который я не могу отследить. В журнале я получаю:

[CFString release]: message sent to deallocated instance 0xeb8a560

Даже при отладке я не смог отследить сбой. Я установил контрольные точки и включил NSZombie, но все равно не помог. У кого-нибудь есть какая-то идея для определения места падения?

Установить среды MallocStackLogging, MallocStackLoggingNoCompact -developer.apple.com/library/mac/#documentation/Performance/… rishi

Ваш Ответ

3   ответа
1

ия, чтобы найти, где она падает. Также вы можете попробовать использоватьbt в GDB, чтобы получить журнал аварий.

этоссылка на сайт много хитростей и советов.

БТ в ГБД была довольно полезна. Nitish
@Nitish Вы хотите, чтобы я объяснил, как создать точку останова исключения ?.
@Nitish. Рад, что помог!
Пожалуйста, объясните ваши предложения. Nitish
2

для получения точного местоположения сбоя необходимо добавить «Exception BreakPoint»; , это добавит точку останова в точное место, где происходит сбой.

В левом столбце xcode 4:

  1. tap on the breakpoint tab (the 6th tab over)
  2. tap on the + button in the bottom left of the window
  3. tap 'add exception breakpoint'
  4. tap 'done' on the popup

ссылка& quot; Запустить & gt; Остановка на исключении Objective-C & quot; в Xcode 4?

0

Этот тип ошибки (используя управление сохранением / освобождением памяти класса) также можно отлаживать с помощью инструмента Zombies. Часто (не всегда) вы можете увидеть историю того, где освобожденный объект был сохранен / освобожден, и выяснить, почему он исчез из-под вас.

Похожие вопросы