GDB запускается, поскольку подпроцесс останавливает родительский процесс после получения «kill -9»

1

Я запускаю автоматические тесты на python, запустив скрипт, который запускает пакетный экземпляр GDB. Если выход соответствует определенным условиям, я убиваю pid gdb, поэтому я могу запустить новый экземпляр GDB. Я запускаю GDB только для регистрации backtraces в случае segfaults. Моя проблема в том, что убийство экземпляра GDB в скрипте или убийство на терминале приводит к тому, что мой скрипт "остановлен".

Есть ли способ отправить сигнал уничтожения на подпроцесс GDB без него. Остановка моего родительского процесса?

Теги:
gdb
kill
subprocess

1 ответ

1
Лучший ответ

Я запускаю GDB только для регистрации backtraces в случае segfaults

Альтернативы:

  1. glibc catchsegv/libSegFault.so.
  2. segv_handler
  3. Установите обработчик для тех сигналов, которые вас интересуют (SIGSEGV, SIGABRT и т.д.), gstack запускает gstack или gdb, присоединяется к себе и выгружает соответствующую трассировку.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню