ГБД не сломается в режиме записи - PullRequest
0 голосов
/ 08 октября 2018

Я пытаюсь использовать функции записи и воспроизведения процессов GDB в (многопоточной) программе C ++.В режиме record GDB не прерывается ни на одной из установленных точек останова.Если я не нахожусь в режиме record, я могу нормально работать с GDB (установить и разорвать на контрольных точках, шаг / следующий / продолжить и т.просто continue после начала записи:

(gdb) record
(gdb) **I hit the Return key here**
The process is already being recorded.  Use "record stop" to stop recording first.
(gdb) continue
Continuing.
Couldn't get registers: No such process.
(gdb) Couldn't get registers: No such process.
(gdb) continue
Continuing.
Cannot execute this command while the selected thread is running.
(gdb) info threads
  Id   Target Id         Frame 
  1    Thread 0x7fad1826a740 (LWP 161777) "athena.py" (running)
  2    Thread 0x7faccba31700 (LWP 162405) "athena.py" (running)
  3    Thread 0x7faccc432700 (LWP 162404) "athena.py" (running)
  4    Thread 0x7facf6c1d740 (LWP 161852) "athena.py" (running)
* 5    Thread 0x7facfcc36700 (LWP 161851) "athena.py" (running)

Если я установлю точку останова, тогда continue, я все равно получаю те же сообщения об ошибках.info threads также не показывает, что какой-либо поток достиг точки останова (все они обозначены как работающие).

athena.py - это интерфейс Python для программы на C ++.Известно, что базовая функциональность GDB довольно хорошо работает с этим интерфейсом и программой.

...