Как установить точку останова в GDB, но не выполнять остановку выполнения?Я просто хочу получать уведомления в консоли, если линия нажата - PullRequest
0 голосов
/ 13 октября 2018

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

Я хочу, чтобы опция была уведомлена о прохождении точки останова, но не останавливать выполнение.

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

Опять же, я уже использую GDB и хочу использовать «точки останова», но просто получаю какое-то уведомление о том, когда и сколько раз пройдена строка, не останавливая выполнение всей программы.Это возможно?

1 Ответ

0 голосов
/ 13 октября 2018

Я хочу, чтобы опция была уведомлена о прохождении точки останова, но не остановила выполнение.

(gdb) break foo.c:123
(gdb) commands $bpnum
continue
end

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

Вы можете также распечатать некоторые переменные перед продолжением или даже продолжить, только если какое-либо условие выполняется, и остановить в противном случае.Например, «продолжить, если x > 100, но остановить, если это не так».

...