Speicherfresser finden?

Status
Nicht offen für weitere Antworten.

Cheefrocker

Bekanntes Mitglied
Hallo zusammen!

Ich habe eine Anwendung geschrieben. Mein Problem ist, das diese Anwendung einfach zu viel Speicher frisst.
Ich hab hier ein Verarbeitungschritt. Wenn dieser Anfängt verbraucht die Anwendung ca 50 MB. Nach diesem Verarbeitungsschritt ist die Anwendung 70 MB groß. aber nachdem Verarbietungschritt sollte diese doch wieder bei 50 MB

liegen. Wenn ich eine Klasse = null setze müsste doch der Speicher weniger werden oder wie soll ich mir das vorstellen??


Wie groß sind eure Anwendung so im Schnitt? Ich will ungern über VM-Optionen den Speicher hochsetzen.
 

Cheefrocker

Bekanntes Mitglied
ein Thread der bei mir ca. 11000 Files druckt. dabei wird jede datei in einem Frame geöffnet( aber nicht gezeigt). dann wird einer jeditorpane ein html geladen. ausgedruckt. und das frame disposed.

aber wenn ich beispielsweise ca 500 Files druchhabe und den thread neu mit 500 Files durchlaufe. setzt er den speicher nicht runter, sondern füllt den wieder.....
 

Murray

Top Contributor
Das Null-setzen aller Referenzen auf ein Objekt führt nicht zwingend dazu, dass die VM dieses nun nicht mehr referenzierte Objekt sofort freigibt; damit wird es nur als bei Gelegenheit freizugeben markiert. Die GarbageCollcetion wird möglicherweise erst viel später angeworfen.

Sind die 50 bzw 70 MB von außen gemessen (z.B. mit dem Windows-Taskmanager), oder stammen die Zahlen aus der VM? Ist ersteres der Fall, dann liegt es wohl daran, dass die VM einmal allokierten Speicher dem Betriebssystem nicht mehr zurückgibt, sondern ihn weiterhin belegt, falls sie ihn wieder braucht.
 

Cheefrocker

Bekanntes Mitglied
meine anwendung ist jetzt weiter angestiegen. Speicher im Taskmanager zeigt 124 mb an.. Es ist noch nicht abgebrochen weil ich -Xmx256m gesetzt habe...


gibt es ne möglichkeit mein Problem in den Griff zu bekommen?
 
B

Beni

Gast
IMHO werden Frames nicht wirklich gelöscht, sondern bleiben in irgendeiner globalen Liste für alle Ewigkeiten gespeichert (ich hatte schon ähnliche Probleme...). Wenn du immer ein neues Frame erstellst: versuche mal stets dasselbe Frame und EditorPane zu benutzen.
 

Cheefrocker

Bekanntes Mitglied
thx @Beni werde das Programm so anpassen.

Noch eine Frage: ich hab System.gc(); benutzt. Jetzt hab ich noch hier das gefunden:

Runtime.getRuntime().runFinalization();
System.gc();
Runtime.getRuntime().gc();

bringt mir das Runtime davor und dahinter irgentwas=?
 

Niki

Top Contributor
System.gc() ist keine Garantie dass der Garbage-Collector läuft. Und ein runFinalization würd ich dir nicht raten. finalize solltest du nie selber aufrufen.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Speicherfresser? Allgemeine Java-Themen 4
N lwjgl kann textureSampler nicht finden Allgemeine Java-Themen 4
OnDemand MemoryLeak nicht zu finden Allgemeine Java-Themen 26
P Java Quellen finden Allgemeine Java-Themen 3
W RegEx Stringliteral finden - Jflex Allgemeine Java-Themen 5
A Mithilfe von einer Nummer einen Namen finden n-Beziehung Allgemeine Java-Themen 8
T JSoup findet input Feld nicht?! Wie kann ich das Feld finden? Allgemeine Java-Themen 3
B Quellcode einer Java libary finden um zu copy & paste'n Allgemeine Java-Themen 5
S Einzigartigen String in Datenbank finden und löschen Allgemeine Java-Themen 23
TheJavaKid Mit Java die Festplatte mit dem meisten freien Speicher finden Allgemeine Java-Themen 7
J Fahrroute zwischen zwei Punkten finden Allgemeine Java-Themen 1
A Applet Applet debuggen und Logs finden Allgemeine Java-Themen 3
H ArrayList: Leere Elemente finden? Allgemeine Java-Themen 2
X Sich wiederholende substrings finden Allgemeine Java-Themen 6
KeVoZ_ Bestimmte Zeile aus Console finden & auslesen Allgemeine Java-Themen 2
N Knoten mit kleinster Distanz finden Allgemeine Java-Themen 3
so_ein_Komischer Erste Schritte java Math Klasse finden? Allgemeine Java-Themen 2
E 3D Objekte in 2D Bild finden Allgemeine Java-Themen 5
M den richtigen COM-Port finden Allgemeine Java-Themen 1
B Muster in 2D-Array finden Allgemeine Java-Themen 4
F Punkte in einem Bild finden Allgemeine Java-Themen 10
E Tool um Methodenaufrufe aus bestimmten Pkg zu finden Allgemeine Java-Themen 2
K Referenzen finden Allgemeine Java-Themen 6
R Zusammenhängende Werte in 2-dim. Array finden und zählen Allgemeine Java-Themen 3
D Face.com - Gesicht im Bild finden Allgemeine Java-Themen 3
M Typ einer inneren Klasse mit reflections finden Allgemeine Java-Themen 7
A Methoden ohne Referenzen finden Allgemeine Java-Themen 9
D JNI->kann abhängige Bibliotheken einer DLL nicht finden Allgemeine Java-Themen 4
S main() class finden Allgemeine Java-Themen 7
K Eclipse Export - Bilder finden Allgemeine Java-Themen 7
A Signifikante Array-Indizes finden Allgemeine Java-Themen 3
D Wort in Text mit >100.000 Wörter finden Allgemeine Java-Themen 7
D Passende Name für Methoden finden Allgemeine Java-Themen 3
C reguläre Ausdrücke finden nicht was sie finden sollen Allgemeine Java-Themen 8
M Pfad in int[][] finden Allgemeine Java-Themen 4
D [debuggen] nich geschlossene Resource "finden" Allgemeine Java-Themen 5
P Windows Media Player starten / finden Allgemeine Java-Themen 2
S Outline um Rechtecke finden..? Allgemeine Java-Themen 4
S Dateipfad finden Allgemeine Java-Themen 2
S String in Datei finden und ersetzen Allgemeine Java-Themen 11
S groesstes Rechteck innerhalb eines Polygons/Shape finden..? Allgemeine Java-Themen 5
S String in Datei finden Allgemeine Java-Themen 5
H Buchstabe in String finden Allgemeine Java-Themen 3
J Länge einer ArrayList finden? Allgemeine Java-Themen 4
B logischen Fehler finden Allgemeine Java-Themen 4
B Annotationen finden Allgemeine Java-Themen 2
H RandomAccessFile - Zeile finden Allgemeine Java-Themen 5
H2SO3- jar soll eigenen namen(pfad) finden Allgemeine Java-Themen 12
S ResourceBundle: Locale Datei in Jar finden Allgemeine Java-Themen 3
megachucky Java Reflection -> versteckte Felder finden? Allgemeine Java-Themen 3
A alle nicht-dplikate finden Allgemeine Java-Themen 14
Landei Trick für Duplikate in Liste finden? Allgemeine Java-Themen 9
V exe finden? Allgemeine Java-Themen 7
T [Joda Time] Nächsten Samstag finden Allgemeine Java-Themen 8
B ProcessBuilder: kann Ordner im home nicht finden Allgemeine Java-Themen 2
G Ordner für Dateien finden Allgemeine Java-Themen 3
P Ungenutzte Klassen und Methoden finden Allgemeine Java-Themen 2
G die mittlere von 5 Zahlen nur mit if und else finden Allgemeine Java-Themen 48
E Doppelten Text in Datei finden? Allgemeine Java-Themen 11
S Relativen Pfad zu Pfad für File finden Allgemeine Java-Themen 4
C kürzester weg zwischen zwei Punkten, Koordinaten finden Allgemeine Java-Themen 15
V Performance Leck finden Allgemeine Java-Themen 3
S Windows Fenster finden Allgemeine Java-Themen 9
E kann Fehler nicht finden Allgemeine Java-Themen 8
P Regulärer Ausdruck um sich wiederholende Zeichen zu finden. Allgemeine Java-Themen 9
O Klassen mit bestimmten Interface finden Allgemeine Java-Themen 11
G Root-Pfad in einer Webapplikation finden Allgemeine Java-Themen 7
A Alle Ordner durchsuchen und Dateien finden Allgemeine Java-Themen 2
T Plugin um unbenötigte librarys zu finden Allgemeine Java-Themen 12
M Kann den Bug nicht finden Allgemeine Java-Themen 19
8 Programme für bestimmte Dateitypen finden Allgemeine Java-Themen 6
F [TableModel] Doppelte einträge finden (bzw. verhindern) Allgemeine Java-Themen 3
D Implementierungen eines Interfaces finden Allgemeine Java-Themen 9
M Dateien suchen und finden Allgemeine Java-Themen 6
G Bilder in JAR-File finden Allgemeine Java-Themen 5
J einen passenden Klassennamen finden... Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben