# Speicherauslastung herausfinden



## Gast (10. Okt 2003)

Hallo,

ich hoffe Ihr könnt mir helfen. Ich habe gehört, das es Java Klassen gibt mit denen man herausfinden kann wieviel Speicher ein Prozess beansprucht. Es wäre noch besser wenn man herausfinden könnte welche Funktionen in dem Prozess wieviel Speicher benötigt. Kennt jemand diese Klassen?

Danke schon im Voraus


----------



## me.toString (10. Okt 2003)

Wäre jetzt die Frage was du machen willst !?
Wenn du das in dein eigenes Programm einbinden willst weiss ich's nicht ... aber wenn du "nur" ein Speicherproblem mit deinem Programm hast und willst rausbekommen wo das Problem liegt kann ich dir einen Profiler ans Herz legen !! Dort siehst du wieviel Speicher allokiert wurde, wieviele Objekte es von welchem Typ gibt, wieviel Speicher die Objekt brauche .... 
Ich habe Erfahrungen mit JProbe gemacht ... da kannst du dann auch die wildesten Auswertungen hinterher fahren.  ( ich glaube das gibt's als Trial-version ... anschauen lohnt sich auf jeden Fall ! )

Michael


----------



## Guest (10. Okt 2003)

Hallo,

das soll ein Projekt werden, ich will ein Programm schreiben, das andere Java - Programme wegen der Speicherauslastung überprüft. So ähnlich wie Optimizeit von Borland. Und mir wurde gesagt das es zu diesem Zweck schon Klassen gibt


----------



## jptc.org (10. Okt 2003)

also JProbe kann man durchaus verwenden, leider gibt es dort eben nur eine trail und keine kostenlose version    das angebot an kostenlosen profilern ist irgendwie sehr begrenzt.

karsten voigt
http://www.java-performance-portal.org


----------



## jptc.org (6. Nov 2003)

vielleicht kann man dafür auch mal Mike's Java Profiler testen.

http://mjp.sourceforge.net/

Ich habe aber selber mit dem Tool bis jetzt keine Erfahrung gemacht. Wenn es Dir weitergeholfen hat, dann wäre es gut, wenn Du mal posten könntest, ob das tool was taugt.

Karsten Voigt
http://www.java-performance-portal.org


----------



## inflamer (28. Dez 2003)

hi!

versuchs doch mal damit:


```
Runtime rt = Runtime.getRuntime();
System.out.println(rt.totalMemory() - rt.freeMemory());
```
[/code]


----------



## jptc.org (6. Jan 2004)

inflamer hat gesagt.:
			
		

> hi!
> 
> versuchs doch mal damit:
> 
> ...



Ok, das wäre ein Versuch, jedoch bekommt man so nur einen ungefähren (Richt-) Wert heraus. Es gibt auch keine Aussage über den Speicherverbrauch einzelner Klassen.

Karsten Voigt
http://www.java-performance-portal.org


----------

