2016-05-18 2 views
0

Мое приложение отключается без какой-либо информации, затем я поворачиваю объекты зомби и malloc scribble и пытаемся поймать точку отказа. Но это больше не сбой с объектов зомби. Когда я выключаю объекты зомби и malloc scribble, авария происходит снова. Как я могу поймать точку отказа? Есть идеи?Почему крах исчезает с «объектами зомби»?

+1

Я уверен, что это поможет объяснить что-то о сбое - это повторяемо, это в ответ на ввод пользователя и так далее. – Noumenon

+0

совет: я тестирую, что произойдет, когда я заберу phonecall в своем приложении. – Kira

+0

Когда вы включаете зомби, ошибки приложения, возникающие из-за оборванных указателей, заменяются хорошими сообщениями отладчика, показывающими использование обвисшего указателя. Вы говорите, что вы не получаете никаких ошибок в консоли отладки, рассказывая о доступе к объектам зомби? Это несколько подрывает предположение, что проблема связана с оборванным указателем, но скорее это может быть что-то другое. Итак, (а) пожалуйста, подтвердите, что вы действительно не видите никаких сообщений re zombies; и (б) сообщите нам, почему вы думаете, что у вас висячий указатель. Полезной будет трассировка стека и более техническая информация о сбоях. – Rob

ответ

1

Аварийный сигнал вызван «оборванным указателем» - объектом, которому вы отправляете сообщение после его освобождения.

Но с включенными зомби, объектов не было выпущено. Вот почему их зомби называют зомби! Таким образом, нет оборванных указателей; вместо этого все объекты течет. Утечка не вызывает крушения, и нет никаких оборванных указателей, поэтому крах уходит.

Цель состоит в том, чтобы дать вам возможность понять, к какому объекту вы отправляете сообщение, когда объект будет выпущен, если вы не использовали зомби.

Смежные вопросы