2 Stimmen

Was ist der beste Multi-Thread-Debugger für C++-Anwendungen?

Ich bin auf der Suche nach einem guten Multi-Thread-fähigen Debugger, der in der Lage ist, Performance-Diagramme von Anwendungs-Threads unter Linux zu zeigen, ich weiß nicht, ob so etwas existiert, vielleicht als Eclipse-Plugin. Die Idee wäre, pro Thread die Speicherzuweisung und die CPU-Nutzung zu verfolgen und in der Lage zu sein, einen Thread zu unterbrechen und seinen Stack-Trace, lokale Variablen usw. zu untersuchen. Es muss nicht unbedingt ein Eclipse-Plugin oder ein kostenloses Tool sein, kennt jemand von Ihnen etwas Ähnliches?

1voto

Nathan Osman Punkte 67377

Qt Schöpfer bietet Informationen über eine Pro-Thread-Basis . Außerdem verfügt er über die Funktionen, die Sie von einem Standard-Debugger erwarten würden. (Überwachen, Haltepunkte, etc.)

Obwohl es für die Kompilierung von Qt-Anwendungen entwickelt wurde, kann es für so gut wie jedes C++-Projekt verwendet werden. (Ich habe es schon einmal zum Kompilieren/Bearbeiten einer Nicht-Qt-Anwendung verwendet).

0 Stimmen

Ich hätte nie gedacht, dass QT Creator diese Art von Werkzeugen hat, ziemlich toll, ich werde es mir mal ansehen. Das letzte Mal, wenn Sie es mit Multi-Thread-Anwendungen verwendet wurden Sie mit einfachen pthreads oder einige spezifische Qt Threading-Klassen?

0 Stimmen

@Core: Hmmm... Ich glaube, es war Qt-Threads, aber ich wäre nicht überrascht, wenn es nicht für native Threads funktionieren würde.

1voto

Nick Bastin Punkte 28870

TotalView (und MemoryScape ) tut in seiner Standarddarstellung nicht genau das, wonach Sie fragen, aber es liefert die Daten, die Sie brauchen. Er kostet Geld, aber ein besserer C++-Debugger für Linux ist nicht zu finden.

Kostenlose Testversionen sind verfügbar, und es gibt eine Reihe von coolen und nützlichen Videos auf ihrer Support-Website.

0 Stimmen

Ich habe in der Vergangenheit Totalview-Demos heruntergeladen, hatte aber nie die Gelegenheit, es tatsächlich zu testen. Ich werde mir die Videos ansehen und nachsehen, danke!

0voto

Kornel Kisielewicz Punkte 53256

Wenn Sie mit Linux arbeiten, haben Sie Zugang zu einem der leistungsstärksten Debugging-Tools der Branche - Valgrind . Lesen Sie darüber, insbesondere über die zusätzliche Werkzeuge wie Helgrind.

Sicher, die Visualisierung ist im Vergleich zu kommerziellen Tools mangelhaft, aber der Detailgrad ist unschlagbar.

0 Stimmen

Ich habe mit valgrind von vor langer Zeit, schönes Werkzeug, jedoch für den Zweck dieser Forschung habe ich nicht gesehen, alle grafischen Tools, aber alleyoop, die nicht mit meinem aktuellen Bedarf, vielleicht seine Zeit, auf ein Projekt für eine bessere Visualisierung zu arbeiten ist?

0 Stimmen

@Coredumped - die Erweiterung bestehender großartiger Tools, um noch großartiger zu werden, ist immer ein gutes Projekt ;)

0 Stimmen

Eclipse CDT hat eine mehr oder weniger gute Integration von Valgrind und ein UI, das sehr schön Diagramme zeichnet. Zusammen mit Callgraph und Systemtap kann man sogar auf Kernel-Ebene ziemlich tief in die Leistungsanalyse einsteigen (für Systemtap siehe access.redhat.com/documentation/de-US/Red_Hat_Enterprise_Linux/ für eine schöne, anfängerfreundliche Einführung).

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X