О навигаторе отладки

Навигатор отладки выводит на экран стеки вызовов Вашего приостановленного приложения. С этим навигатором можно отладить Swift или код на базе С, а также кадры OpenGL.

Выбор элемента в навигаторе отладки заставляет информацию об элементе быть выведенной на экран в редакторе исходного кода и в области отладки.

 

Отладка кода на базе С

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

Навигатор отладки открывается автоматически каждый раз, когда Вы приостанавливаете свое приложение (путем выбора Debug> Pause), или это поражает точку останова. (Можно изменить то поведение в предпочтениях Предупреждений.)

../Art/dbgnav-about-1.png

Потоки указывают свое состояние выполнения со значком состояния:

  • Никакой значок не означает, что поток работает обычно.

  • Желтый значок состояния означает, что поток блокируется и ожидающий на блокировке или условии.

  • Красный значок состояния означает приостановку потока. Приостановленный поток не выполняет код при возобновлении приложения.

  • Серый значок означает, что поток или блок являются частью зарегистрированного следа и в настоящее время не выполняются

Навигатор отладки содержит селектор представления процесса, приборы отладки, поток и список ячейки памяти и панель фильтра.

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

С селектором представления процесса Вы указываете, как навигатор выводит на экран потоки:

  • Потоком: Дисплеи распараллеливают как плоский список.

  • Очередью: Группы распараллеливают под очередью отгрузки, создавшей их.

С панелью фильтра Вы указываете потоки и стековые фреймы, которые Вы хотите видеть. Левая кнопка подавляет дисплей стековых фреймов без отладочных символов. Средняя кнопка выводит на экран только разрушенные потоки и потоки с отладочными символами. Когда навигатор отладки выводит на экран очереди, правильная кнопка подавляет дисплей неподвижных блоков. Фильтр потока позволяет Вам показывать только потоки или очереди с именами, соответствующими текст фильтра.

Для удаления ячейки памяти из списка выберите его и нажмите Delete.

При отладке многократных процессов от той же рабочей области каждый процесс перечислен отдельно в навигаторе отладки с ее потоками, сгруппированными под нею. Многократная отладка процесса является полезным способом отладить взаимодействия между процессами клиента и сервера.

 

Отладка кадров OpenGL

При отладке кадра OpenGL навигатор отладки показывает трассировку вызовов OpenGL, генерировавшую полученный кадр. Трассировка вызовов включает стековый фрейм для каждого вызова OpenGL.

Навигатор отладки содержит трассировку вызовов OpenGL и панель фильтра.

С панелью фильтра Вы указываете вызовы OpenGL и стековые фреймы, которые Вы хотите видеть.

  • Фильтр вызовов: Показывает, что только маркеры и OpenGL рисуют вызовы.

  • Ползунок стека вызовов: Показывает стековые фреймы, от только самого соответствующего для всех них.