Чтобы временно остановить вычислительный процесс в программе, можно задать точки останова - отмеченные в тексте места программы, при достижении которых она приостанавливает свою работу. Остановиться можно в любом месте программы, соответствующем исполняемым операторам. Минимальный шаг таких остановок - одна строка текста, поэтому нецелесообразно в тексте программы писать на одной строке несколько операторов. Чтобы задать точку останова в программе, можно воспользоваться следующими приемами:
• поместить курсор мыши в начало строки, где надо задать точку останова, и нажать левую клавишу;
• поместить курсор текстового редактора в требуемую строку, вызвать локальное меню редактора и выполнить команду Toggle Breakpoint (F5) -"переключить" точку останова.
Таким образом задаются так называемые безусловныеточки останова, для которых остановка выполнения программы будет происходить в любом случае, если компьютером выполняется первая команда, соответствующая строке текста с точкой останова. Для таких точек задается имя файла и номер строки, где установлена эта точка.
Помимо безусловныхточек останова можно использовать и так называемые условныеточки останова, для которых помимо указанной выше информации задаются также условие останова и (или) число проходов до останова.
Условие представляет собой логическое выражение, написанное по правилам Object Pascal. Останов в такой точке происходит только в случае, если логическое выражение даст значение True (истина).
Число проходов до останова говорит, на каком по счету попадании в данную точку останова произойдет действительный останов. Если это число равно нулю или единице, останов будет происходить при любом попадании в точку останова (если только не задано условие останова), при двух - на каждом втором, и т. д.
Для того чтобы задать условную точку останова следует поместить курсор редактора на строку, где нужно ее задать, и выполнить команду главного меню Run|Add Breakpoint, в результате чего появится окно редактирования точки останова. Первоначально в нем находится имя файла и номер строки, где должна быть установлена точка останова. Условие останова отсутствует, а число проходов равно нулю. Такая ситуация соответствует заданию безусловной точки останова. Если же сюда ввести условие останова и (или) число проходов, отличное от нуля и единицы, точка останова станет условной. Работа с этим окном завершается в этом случае нажатием кнопки New (Новая точка останова).
Все строки текста, в которых заданы точки останова, выделяются особым цветом. Если точка останова задана неправильно, цвет ее строки будет отличаться от цвета строки с правильно установленной точкой.
Просмотреть все заданные точки останова можно с помощью команды главного меню View|Breakpoints, в результате чего откроется окно точек останова.
Чтобы сбросить любую точку останова, можно воспользоваться следующими способами:
• поместить курсор мыши в начало строки, где надо сбросить точку останова, и нажать левую клавишу;
• поместить курсор текстового редактора в требуемую строку, вызвать локальное меню редактора и выполнить команду Toggle Breakpoint (F5) - "переключить" точку останова.
Можно сбросить и все точки останова одновременно. Для этого следует воспользоваться окном точек останова.
Любую условную точку останова можно сделать безусловной и наоборот, а также отредактировать условие и число проходов для условной точки останова.
Одним из способов здесь является следующий - сбросить предыдущую точку останова и затем задать новую.
Другой способ использует окно точек останова, из которого вызывается окно редактирования точки останова, с помощью которого вводятся' необходимые изменения. Работа с этим окном завершается нажатием кнопки Modify (Модифицировать).
Любую точку останова, а также все одновременно, можно сделать нерабочими, не сбрасывая их и оставляя в тексте, а при необходимости снова активизировать. Для этого используются локальные меню указанных окон. Строка текста программы с нерабочей точкой останова меняет свой цвет.
Когда при работе программы компьютер попадает на точку останова, выполнение программы прекращается, а точка останова становится видимой в текстовом редакторе и помечается треугольником в начале строки. На эту же строку переходит и курсор редактора.
Остановить программ можно также, запустив ее выполнение до курсора. Для этого следует воспользоваться командой главного меню Run|Run to Cursor (F4) либо командой Run to Cursor локального меню текстового редактора. В этом случае программа выполняется до тех пор, пока не встретится первая команда, соответствующая строке, на которой стоит курсор редактора (если только на пути не окажется рабочая точка останова - в этом случае программа остановится на ней). Строка, на которой произошел останов, изменяет свой цвет, а в ее начале появляется треугольник. Естественно, что в этом случае курсор редактора должен находиться на строке, соответствующей исполняемым операторам.
Еще один способ останова программы - выполнить команду главного меню Run|Program Pause, однако в данном случае заранее неизвестно, в какой точке программа остановится. При такой остановке в активной странице текстового редактора будет показана строка, где произошел останов (если останов произошел на операторе, написанном программистом), она будет помечена треугольником в своем начале, и на этой строке будет размешен курсор редактора. После останова программы ее можно пустить дальше, используя следующие средства:
• выполнить команду главного меню Run|Run (F9), после чего программа будет выполняться либо до конца, либо до ближайшей точки останова;
• использовать любую трассировку программы (см. ниже);
• выполнить команду главного меню Run|Run to Cursor (F4), после чего программа будет выполняться либо до строки, где находится курсор редактора, либо до первой попавшейся точки останова.
Если дальнейшее выполнение программы бесполезно, можно прекратить режим отладки.
Опубликовал Kest
December 27 2009 20:27:14 ·
1 Комментариев ·
17015 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Андрейка July 27 2012 13:54:38
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.