GDB: breakpoint и watchpoint отвечают на разные вопросы
Breakpoint останавливает программу в заданном месте: на строке, при входе в функцию или по адресу. Он удобен, когда уже есть подозрительный участок кода. Условие позволяет пропускать остановки, которые не относятся к вашей ошибке.
Watchpoint следит за изменением значения переменной или выражения. Если данные портятся, а место записи неизвестно, он помогает поймать изменение без обхода всех возможных присваиваний.
У watchpoint есть ограничения: аппаратная поддержка зависит от системы, число точек и размер отслеживаемых данных ограничены. Программный вариант выполняет пошаговую проверку и может сильно замедлять приложение. Не считайте наблюдение за любым выражением бесплатным.
📎 Breakpoint и watchpoint в руководстве GDB
#инструменты
Breakpoint останавливает программу в заданном месте: на строке, при входе в функцию или по адресу. Он удобен, когда уже есть подозрительный участок кода. Условие позволяет пропускать остановки, которые не относятся к вашей ошибке.
Watchpoint следит за изменением значения переменной или выражения. Если данные портятся, а место записи неизвестно, он помогает поймать изменение без обхода всех возможных присваиваний.
У watchpoint есть ограничения: аппаратная поддержка зависит от системы, число точек и размер отслеживаемых данных ограничены. Программный вариант выполняет пошаговую проверку и может сильно замедлять приложение. Не считайте наблюдение за любым выражением бесплатным.
📎 Breakpoint и watchpoint в руководстве GDB
#инструменты
Просмотры: 24