Добрый день.
Можно ли как то внутри gdb автоматизировать действия, например пробежаться по всем потокам и вывести те из них у которых в стеке вызовов (backtrace) есть определенная функция?
gdb -x command_file
>gdb -x command_fileэто то понятно
а вот как в command_file организовать цикл по всем потокам - непонятно...
>Добрый день.
>Можно ли как то внутри gdb автоматизировать действия, например пробежаться по всем
>потокам и вывести те из них у которых в стеке вызовов
>(backtrace) есть определенная функция?вообще то нужно читать доки по ждб!!!!
а с бектрейсами очень просто: thread apply all bt
>а с бектрейсами очень просто: thread apply all btпочти то что нужно, спасибо!
а есть ли способ отобрать только те, у которых в backtrace есть определенная функция?
>Добрый день.
>Можно ли как то внутри gdb автоматизировать действия, например пробежаться по всем
>потокам и вывести те из них у которых в стеке вызовов
>(backtrace) есть определенная функция?из info gdb:
GDB/MI is a line based machine oriented text interface to GDB and is
activated by specifying using the `--interpreter' command line option
(*note Mode Options::). It is specifically intended to support the
development of systems which use the debugger as just one small
component of a larger system.то есть придется написать прогу или скрипт (например на перле), который парсит вывод gdb и даёт нужные команды. Этот интерфейс gdb специально предназначен для внешнего программного управления.
>GDB/MI is a line based machine oriented text interface to GDB and is
>activated by specifying using the `--interpreter' command line optionвот это - то, что нужно! спасибо!