Как отслеживать причину SIGABRT

Я показываю код для этой проблемы, например, цели, но на самом деле мой вопрос: как я должен отслеживать ошибки SIGABRT и понимать их? Я прочитал этот вопрос: sigabrt без сообщения об ошибке , однако я не думаю, что это относится к моей проблеме.

Пример, который я покажу ниже, очевидно, не является проблемой xib, и предыдущие времена получение SIGABRT казалось больше связано с необработанными исключениями. Я пробовал использовать GDB, но это не помогает. Нет ли более полного дампа для просмотра? Я также использовал NSZombie , но я действительно не понимаю, как его использовать, поэтому, если это ваш ответ, предоставьте ссылку на документацию о том, как я должен получать от нее релевантные данные.

Вот мой пример: я пытаюсь использовать Core Data. Мой проект изначально не был настроен, поэтому мне пришлось вручную добавить его, что я сделал, перейдя в мой проект> «Сборка фаз»> «Связывание двоичных файлов с библиотеками»> щелчок по плюсу и добавление CoreData.framework

Затем я создал свою модель данных, выбрав «Файл»> «Создать»> «Модель данных». Я создал немало атрибутов, и все.

После этого я добавил подходящие методы для делегата приложения (я сделал это, создав новый проект с помощью Core Data, а затем скопировав методы):

 //code removed, as its not needed for the question/answer 

После этого я просто попытался сохранить значение управляемому объекту (еще раз код, скопированный из реализации по умолчанию с новым проектом):

 //code removed, as its not needed for the question/answer 

Но все, что я получаю, когда я выполняю метод addTime это ошибка SIGABRT.

ошибка xcode

SIGABRT повышается, когда объект получает незавершенное сообщение. Сколько предупреждений имеет ваше приложение? Попробуйте пробраться через них и найти те, которые предупреждают вас, «какой-то объект может не отвечать на какой-то селектор», если вы очищаете свое приложение от всех этих, вы, скорее всего, будете работать правильно.

EDIT: Ответ от комментариев ниже, которые очень полезны:

хорошо, здесь идет тяжелая артиллерия – вы пробовали использовать контрольные точки? Откройте шестую вкладку в проводнике проекта, в нижнем левом углу нажмите + -> Добавить контрольную точку исключения -> Готово. Это добавит обработчик исключений, который остановит ваше приложение на самом вызове метода, который приведет к сбою приложения.

EDIT: Начиная с xCode 5.0> Вам больше не нужно указывать, какое исключение будет использовать ваша точка останова при создании точки останова. Вам просто нужно нажать + -> Добавить контрольную точку исключения, и вы в порядке.

введите описание изображения здесь

Давайте будем гением компьютера.