trc Geschrieben 21. März 2002 Teilen Geschrieben 21. März 2002 hi, ich habe ein kleines problem. ich lese mit einem programm eine datei ein und bearbeite sie dann weiter. wenn ich dies mit verschiedenen dateien mehrmals mache bekomme ich einen java.lang.OutOfMemoryError. kann man in java alte nicht mehr gebrauchte objekte "von hand" zur laufzeit löschen und so deren speicherplatz wieder freigeben? mfg trc Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jaraz Geschrieben 21. März 2002 Teilen Geschrieben 21. März 2002 Hallo, beendest du die einzelnen Streams? Beispiel: ------------------------------------------- ObjectOutputStream os = new ObjectOutputStream (new FileOutputStream(FILENAME)); os.writeObject(v); os.close(); ------------------------------------------- Gruß Jaraz Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
trc Geschrieben 21. März 2002 Autor Teilen Geschrieben 21. März 2002 ja, ich habe einen DataOutputStream und den schließe ich nach dem schreiben mit close(). Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Snowghost Geschrieben 21. März 2002 Teilen Geschrieben 21. März 2002 In was für ein Objekt liest du denn die Dateien ein? Liest du jede Datei in ein neues Objekt ein, oder verwendest du immer das gleiche? Wie groß sind die Dateien, die du einliest. Am besten, du postest mal ein bisschen von deinem Code. Dann muss man nicht so im dunklen tasten...... Snowghost Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
loeti Geschrieben 24. März 2002 Teilen Geschrieben 24. März 2002 Du kannst die Virtual Machine auch explizit dazu bewegen, den Garbage Collector zu starten, der im Speicher aufräumt. Allerdings funktioniert das wohl nciht 100%ig, aber versuchen kannst du's ja mal: System.gc(); Gruß, Löti. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.