6.9.1. Использование точек останова

На верх  Назад  Вперёд

Точки останова используются в программе для тех случаев, когда необходимо остановить выполнение программы в определённом месте. Когда программа достигает точки останова, она останавливается и передаёт управление в IDE. Затем можно продолжить выполнение программы с места останова.

Чтобы установить точку останова на текущей строке кода, выберите в меню DEBUG‑BREAKPOINT или нажмите CTRL-F8. Список текущих точек останова можно получить через команду меню DEBUG‑BREAKPOINT LIST. Окно списка показано на рис. 6.11.

FreePascal_Руководство_пользователя_img_28

Рис. 6.11. Окно списка точек останова.

Элементы окна списка точек останова описаны ниже.

Элемент

Перевод

Описание

New

Новая

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

Edit

Редактировать

Отображает диалоговое окно свойств точки останова, где можно изменить параметры выбранной точки останова.

Delete

Удалить

Удаляет выбранную точку останова.

Toggle

Переключатель

Включает или выключает точку останова, то есть изменяет состояние (графа State на рис. 6.11) на противоположное.

Close

Закрыть

Закрывает окно.

Окно параметров точки останова показано на рис. 6.12. Здесь можно установить следующие параметры:

Параметр

Перевод

Описание

Type

Тип

Тип точки останова. Существуют следующие типы:

Function (Функция)

Программа будет остановлена при обнаружении функции с указанным именем.

file-line (Строка файла)

Программа будет остановлена при обнаружении в файле с указанным именем и номером строки.

watch (выражение)

Можно ввести выражение, и программа будет остановлена, как только это выражение будет изменено.

awatch (доступ к выражению)

Можно ввести выражение, которое ссылается на место в памяти, и программа будет остановлена, как только будет выполнен доступ к этому месту в памяти.

address (адрес)

Остановка программы при получении адреса.

rwath (чтение выражения)

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

Name

Имя

Имя функции или файла.

Conditions

Условия

Здесь можно ввести выражение, которое должно быть ИСТИННО, чтобы программа остановилась. Вводимое выражение должно быть правильным GDB- выражением.

Line

Строка

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

Ignore count

Количество пропусков

Это значение определяет, сколько раз программа проигнорирует точку останова, прежде чем остановиться.

FreePascal_Руководство_пользователя_img_29

Рис. 6.12. Окно параметров точки останова.

ПРИМЕЧАНИЯ

1.Так как для отладки IDE использует GDB, то все выражения необходимо вводить в верхнем регистре.

2.Выражения, которые ссылаются на место в памяти, должны быть не более 16 байтов на Linux или go32v2 для процессоров Intel, так как отладочные регистры процессоров Intel используются для мониторинга памяти.

3.Отслеживание местоположения памяти не работает на Win32 без применения специальных «патчей».