Поток 1: остановлен из-за ошибки точки останова при инициализации объекта NSURL

Я прохожу курс разработки iOS в Стэнфордском университете в iTunes U.

В одной из демонстраций (которой я пытался следовать) есть этот код, который загружает список свойств из NSURL и возвращает его как NSMutableDictionary.

-(NSMutableDictionary *) words
{

    NSURL *wordsURL=[NSURL URLWithString:@"http://cs193p.stanford.edu/vocabwords.txt"];

    words=[[NSMutableDictionary dictionaryWithContentsOfURL:wordsURL] retain];


    return words;
}

Приложение успешно построено, но во время выполнения выдает следующую ошибку и зависает:

Снимок экрана Xcode, остановленного в точке останова

Я не могу понять, в чем проблема. Не могли бы вы помочь?


person Umair Khan Jadoon    schedule 04.04.2012    source источник


Ответы (3)


Вы остановились в точке останова. Это инструмент отладки, а не ошибка. Видите синюю стрелку/вкладку на левом поле, где находятся номера строк? Перетащите его куда угодно (вы увидите «пуф»), чтобы удалить его, а затем снова запустите свой проект.

Вы также можете деактивировать все точки останова, набрав -Y, эквивалент клавиши для пункта меню Отладка>Деактивировать точки останова, или вы можете просмотреть все точки останова в Навигаторе точек останова (нажмите -6).

Когда выполнение останавливается таким образом, вы можете продолжить с точки останова, либо набрав continue в приглашении отладчика в консоли:

(lldb) continue

Или нажмите кнопку «Воспроизвести» в элементах управления отладчика. Вы также можете ввести Control--Y, что эквивалентно пункту меню Debug>Continue.

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

person jscs    schedule 04.04.2012

Это не ошибка. Вы просто устанавливаете точку останова (возможно, не зная об этом).

Перетащите маленький синий шеврон в колонне слева в сторону. Вы увидите, как оно исчезнет и испортится, а затем вы сможете перестроить свое приложение, и вы должны увидеть, как оно работает правильно.

Теперь, с учетом сказанного, я думаю, что в вашем коде есть некоторые ошибки управления памятью, но мы можем вернуться к ним позже. ;-)

person Conrad Shultz    schedule 04.04.2012

Программа останавливается, потому что у вас есть точка останова. Это синяя стрелка слева от кода. Щелкните его правой кнопкой мыши и удалите.

person Zalykr    schedule 04.04.2012