Speicherverbrauch ausgeben

Hallo,

mein programm bricht mit einer out of memory fehlermeldung ab. ich weiss genau an welcher methode es liegt, denn ohne sie hatte es noch einwandfrei funktioniert.

wie kann ich den speicherverbauch (mit system.out.print) ausgeben?

meine methode geht ein ArrayList durch und fügt je nach eigenschaft des elementes dieses element unterschiedl. ArrayLists zu. Das ursprüngliche ArrayList wird nicht mehr benötigt. Nach jedem hinzufügen lösche ich das element aus der ursprünglichen liste. Eigentlich kann das doch kein memory kosten, oder habe ich einen denkfehler? ich wandele eine lineare liste in etwa in eine baumstruktur um.

für hilfe wäre ich dankbar,

chris

Hallo Chris,

wie kann ich den speicherverbauch (mit system.out.print)
ausgeben?

Runtime.getRuntime().totalMemory();

http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Ru…

gruß
Heavy

Hi.

benötigt. Nach jedem hinzufügen lösche ich das element aus der
ursprünglichen liste. Eigentlich kann das doch kein memory
kosten, oder habe ich einen denkfehler? ich wandele eine

Das kostet sehr wohl Speicher, denn es wird lediglich die
Referenz auf das Objekt geloescht. Das Objekt selbst
verbleibt im Speicher bis sich der GC die Ehre gibt.

Du kannst der VM auch mehr Speicher zuteilen. (Xms, Xmx)

Gruss, Patrick