Ich habe mal eine Frage in Bezug auf den Heap-Speicher.
Ich habe einen riesigen Text. Ich bin mit einem BufferedReader wie folgt über diesen drübergegangen.
Jede einzelne Zeile wollte ich aus bestimmten Gründen manipulieren, indem ich mit replaceAll(String regex, String s) bestimmte Zeichen eliminiere. Ich habe dann aber jedes Mal einen GC out of limits-Error bekommen (also letztlich gab es nicht genug HeapSpeicher für die ganzen auf diese Weise entstandenen regex-Strings, falls ich das richtig verstanden habe.)
Ich habe bereits für dieses Problem eine Lösung gefunden. Aber nun meine Frage:
Wenn ich bei jeder einzelnen Iteration in der while-Schleife (siehe oben) line.substring(0, 10) (anstatt line.replaceAll(...)) schreibe, also einen substring: Bekomme ich dann dasselbe Problem? Landen dann irgendwelche substrings auf dem Heap, so wie dies bei meinen regexen der Fall war? Ich studiere kein Informatik, daher habe ich nie eine AlgoDat-Vorlesung besucht.
Im Voraus vielen Dank für Tips / Antworten.
HPL
Ich habe einen riesigen Text. Ich bin mit einem BufferedReader wie folgt über diesen drübergegangen.
Java:
BufferedReader br = new BufferedReader(new FileReader("dateiname"));
String line = br.readLine();
while(line != null){
line.replaceAll(...)
line=br.readLine();
Jede einzelne Zeile wollte ich aus bestimmten Gründen manipulieren, indem ich mit replaceAll(String regex, String s) bestimmte Zeichen eliminiere. Ich habe dann aber jedes Mal einen GC out of limits-Error bekommen (also letztlich gab es nicht genug HeapSpeicher für die ganzen auf diese Weise entstandenen regex-Strings, falls ich das richtig verstanden habe.)
Ich habe bereits für dieses Problem eine Lösung gefunden. Aber nun meine Frage:
Wenn ich bei jeder einzelnen Iteration in der while-Schleife (siehe oben) line.substring(0, 10) (anstatt line.replaceAll(...)) schreibe, also einen substring: Bekomme ich dann dasselbe Problem? Landen dann irgendwelche substrings auf dem Heap, so wie dies bei meinen regexen der Fall war? Ich studiere kein Informatik, daher habe ich nie eine AlgoDat-Vorlesung besucht.
Im Voraus vielen Dank für Tips / Antworten.
HPL