Veröffentlicht 25. April 200322 j Hallo, ich habe folgendes Problem. Mein Java-Prog läuft über Web Start. Leider läuft das Prog auf Rechnern die nur 32 bzw. 64 MB Arbeitsspeicher haben. Das Prog benötigt bei Progstart ca. 12 MB Speicher. Der Speicherbedarf wird immer größer und baut sich nicht mehr ab, dadurch läuft das Prog immer langsamer. Alle Referenzen usw. die nicht mehr benötigt werden, werden abgebaut. Kann mir jemand helfen wie ich dieses Problem in den Griff bekomme.
25. April 200322 j Das ist schwierig. Soweit ich weiß gibt es in Java (im Unterschied zu z.B. C#) keine Möglichkeit manuell in die Speicherverwaltung einzugreifen. Das einzige ist, die Möglichkeit den garable collector manuell aufzurufen, ich glaube mit Systems.gc(). Aber dies würde nicht helfen, wenn das Programm wirklich so viel Speicher benötigt. Ist sicher dass alle Referenzen freigegeben sind? Besonderns beliebt sind da nicht gelöschte Listener.
25. April 200322 j wenn ich ein fenster schliesse mit dispose() dann sollten doch die Referenzen auf die Listener entfernt werden, oder kann man davon nicht ausgehen.
25. April 200322 j Hi! Für die JVM kann man z.B. mit "java -mx8m" den Speicher auf z.B. max 8MB begrenzen. Bekommst du dann eine Out of Memory Exeption, werden deine Referenzen nicht gelöscht. Oder du brauchst zwischendurch soviel Speicher. Du kannst dann mit einem Profiler nachschauen welche Objekte immer mehr werden. Von Borland gibt es Optimizeit und Sitraka gibt es JProbe. Von beiden gibt es Testversionen. Gruß Jaraz
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.