2010-10-04 7 views
5

Ich habe einen Timing-Bug in meiner Anwendung, die nur auftritt, wenn ich Valgrind verwende, weil Valgrind den Prozess so sehr verlangsamt.verlangsamen gdb, um Fehler zu reproduzieren

(es ist eigentlich ein boost :: weak_ptr-Ausnahme, die ich nicht lokalisieren kann)

Jetzt frage ich mich, wie man die Fehler mit GDB zu reproduzieren. Ich sehe keine Möglichkeit, gdb + valgrind zu kombinieren.

Danke.

Antwort

1

Sie können gdb starten, wenn Valgrind einen Fehler erkennt (--db-attach=yes). Selbst wenn die Ausnahme momentan keinen Speicherfehler auslöst, ist es einfach, einen fehlerhaften Speicherzugriff in diesem Pfad zu fälschen.

+1

Vielen Dank. Glücklicherweise wurde die Ausnahme nicht abgefangen, daher wurde der Debugger von Valgrind aufgrund von SIGABORT gestartet. Fehler gefunden :-) – denis