Analysieren von Speicherverbrauch

Status
Nicht offen für weitere Antworten.

Meru

Bekanntes Mitglied
Hallo,

ich habe 2 Fragen zum Speicherverbrauch von Java.

1. Gibt es in Java eine Möglichkeit, den Speicherverbrauch eines bestimmten Objektes zu ermitteln?
2. Gibt es eine Möglichkeit (evtl per Tool oder so) sich den Speicherverbrauch der Anwendung anzeigen zu lassen (Runtime.getRuntime().maxMemory() etc) und welche Objekte im "Lebenszyklus" enthalten und instanziiert sind und ggf. wie viel Speicher sie verbrauchen (Analog zu Frage 1)?

zu 1. Natürlich kann man sich dafür den aktuellen Speicherverbrauch der VM anzeigen lassen, das Objekt instanziieren und dann den Speicherverbrauch der VM erneut auslesen, aber vielleicht gibt es dafür noch ein tool oder ähnliches

Mit JConsole kann man sich ja schon einiges Anzeigen lassen, jedoch fehlt mir dort die Auflistung der Objekte, die in der Application vorhanden sind.



--
MfG

Meru
 
M

maki

Gast
Mit VisualVM geht das, kann auch jeder andere Profiler (TPTP, etc)
 

planetenkiller

Aktives Mitglied
Per jConsole->MBeans->com.sun.management->HotSpotDiagnostic->Operations->dumpHeap() kannst du einen Dump des Heaps machen lassen. Mittels jhat kannst du dir die Objekte im Heap anschauen.
 

Meru

Bekanntes Mitglied
Ich bedanke mich erst einmal für die Antworten.

Den vorgeschlagenen Profiler von Maki (VisualVM) finde ich schon ganz nett und hat mir schon ein ganzes Stück weiter geholfen.
Ist es mit diesem Tool auch irgendwie möglich, Referenzen anzuzeigen? Also ich hab ein ObjectA, welches ObjectB enthält. Wenn ich nun im Profiler/HeapDump/.... von ObjectB bin, dann wäre es vielleicht auch toll, wenn ich wüsste, dass es in ObjectA enthalten ist. Diese Einstellung/Ansicht habe ich, in der kurzen Testzeit, nicht gefunden.
Ob es das gibt weiß ich auch nicht. Aber vielleicht kennt einer einen Profiler mit dem das geht? Ich werde mal ein wenig weiter im VisualVM stöbern, vielleicht finde ich es ja doch noch irgendwo ;)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Gibt es eine Moeglichkeit die Runtime Ausführung zu analysieren..? Allgemeine Java-Themen 7
kilopack15 Musik analysieren Allgemeine Java-Themen 0
L Best Practice Log Dateien analysieren und eventuell passende Daten am Chart darstellen Allgemeine Java-Themen 1
A Input/Output Bild in Java einlesen und analysieren! Allgemeine Java-Themen 8
B String analysieren / zuordnen Allgemeine Java-Themen 8
Z 2D-Grafik Webcam-Bilder analysieren und manipulieren Allgemeine Java-Themen 8
G Bundle analysieren Allgemeine Java-Themen 2
K Dependency Baum erstellen/analysieren Allgemeine Java-Themen 2
L Javaprozess analysieren / aufschlüsseln Allgemeine Java-Themen 5
S String analysieren, zerlegen und überarbeiten Allgemeine Java-Themen 4
märliprinz CSS-File mit Java analysieren Allgemeine Java-Themen 3
T Programm analysieren Allgemeine Java-Themen 2
T Datentypen interner Speicherverbrauch x64 long vs. int Allgemeine Java-Themen 8
B Speicherverbrauch Objekt-Referenz Allgemeine Java-Themen 11
B speicherverbrauch 2dimensionales array - rätsel?! Allgemeine Java-Themen 13
lacco Speicherverbrauch von Arrays Allgemeine Java-Themen 2
O Speicherverbrauch von Java / VM sehr hoch? Allgemeine Java-Themen 27
G Speicherverbrauch einer Variable Allgemeine Java-Themen 2
G Speicherverbrauch eines Programms Allgemeine Java-Themen 2
L Speicherverbrauch einer Anwendung unter Windows Allgemeine Java-Themen 2
J Speicherverbrauch des Systems ermitteln Allgemeine Java-Themen 4
J Maximalen Speicherverbrauch ermöglichen Allgemeine Java-Themen 2
C Speicherverbrauch von JDialog enorm Allgemeine Java-Themen 6

Ähnliche Java Themen

Neue Themen


Oben