Gibt es einen Weg, kann ich das Speicherleck eines laufenden Prozesses finden? Ich kann Valgrind verwenden, um Speicherlecks vor dem Start eines Prozesses zu finden. Ich kann GDB verwenden, um es an einen laufenden Prozess anzuhängen. Wie kann ich einen Speicherverlust eines laufenden Prozesses debuggen? Bitte um Rat. Vielen Dank.Wie kann ich ein Speicherleck eines laufenden Prozesses finden?
Antwort
Profiler instrumentieren den Code .. daher müssen Sie Ihre App "durch" sie ausführen. Ich würde sagen, Sie sind in Schwierigkeiten, wenn Sie es mit gdb nicht herausfinden können, und wenn Sie aus irgendeinem Grund keine neue Instanz erstellen und mit einem Profiler testen können.
Gibt es eine Möglichkeit, Speicherverluste mit Gdb zu finden? – howtechstuffworks
Sie können die Werte von Variablen überprüfen. Es wäre also so, als würde man eine Nadel im Heuhaufen finden, es sei denn, Ihre App ist klein oder Sie haben einen starken Verdacht und haben eine gezielte Suche. Es ist also technisch möglich, es zu finden, aber auf keinen Fall wird gdb irgendetwas für dich buchstabieren und ist wahrscheinlich nicht praktisch. – sethcall
http://unix.stackexchange.com/q/36450/17720 – howtechstuffworks
Jeder Grund, warum Sie Valgrind nicht verwenden können? Nur neugierig. – tangrs
Nun, wenn ein Prozess bereits läuft, gibt es eine Möglichkeit, ich kann es anhängen? – howtechstuffworks