StringBuilder OutOfMemoryError

Status
Nicht offen für weitere Antworten.

lokly

Aktives Mitglied
Hi,
ich habe einen StringBuilder. Der nimmt über ne Rekursive Methode sehr, sehr, sehr viele Werte auf..
Nur kommt dann irgendwann eine OutOfMemoryError Exception.
Gibt es eine Möglichkeit zu überprüfen, wie "voll" der StringBuilder ist, damit ich dann einen 2ten, neuen StringBuilder erstellen kann/muss?
Oder, dass der Builder dann einfach aufhört und das bisherige Ergebnis behält?
Wüsste nämlich jetzt nicht, wie man schauen kann, ob der maximal Speicher voll ist..
 

Wildcard

Top Contributor
Der StringBuffer ist nicht das Problem, dir geht insgesamt der Speicher aus. Du musst der VM mehr Speicher reservieren.
 
S

SlaterB

Gast
allerdings dürfte der StringBuilder auf ein char[] bis Integer.MAX_VALUE begrenzt sein, also maximal um die 4 GB bei 2 Byte pro char,
bei modernen Rechnern kann man irgendwann überlegen, mehrere StringBuilder zu verwenden ;)
 

lokly

Aktives Mitglied
Danke für die schnellen antworten :)
Hab das gerad mal getestet: 92,3 MB verwendeter Phys. Speicher und 1,34 Virt. Speicher. 2 GB hab ch installiert und 1 GB war während der Ausführung noch frei.
Oder gibt es für die VM ne separate Einstellungsmöglichkeit und wenn ja, wie komme ich daran? Gibts da ne Konsolenmöglichkeit?
Gibts denn noch ne andere Möglichkeit ausser an die Speicherverwaltung zu gehen, um herauszufinden, ob der Builder voll ist oder net?
 
S

SlaterB

Gast
wie du den Speicher erhöhen kannst, solltest du erstmal bei google/ in der Forum-Suche nachschlagen
'VM mehr Speicher reservieren' enthält manch verwertbare Stichworte

zur Anzeige noch
Java:
public class Test {

	public static void main(String[] args) {
		Runtime r = Runtime.getRuntime();
		System.out.println("Max-Speicher     : " + r.maxMemory());
		System.out.println("benutzer Speicher: "
				+ (r.totalMemory() - r.freeMemory()));
		char[] x = new char[20000000];
		System.out.println("benutzer Speicher: "
				+ (r.totalMemory() - r.freeMemory()));
	}
}
 

Ark

Top Contributor
Obwohl Arbeitsspeicher immer billiger wird, bin ich dagegen, fehlenden als Sündenbock darzustellen. Wenn es diesbezüglich Probleme gibt, dann liegt das, so denke ich, wahrscheinlich an einer falschen Datenstruktur oder einer falschen Herangehensweise, aber nicht an fehlendem Arbeitsspeicher.

Ark
 
Wenn es diesbezüglich Probleme gibt, dann liegt das, so denke ich, wahrscheinlich an einer falschen Datenstruktur oder einer falschen Herangehensweise, aber nicht an fehlendem Arbeitsspeicher.
Ark

Öhöm, hast du dich schon mal mit Optmierungsproblemen beschäftigt?
Viele Probleme sind da polinminal hart.
Wenn du es besser kannst, nur zu, da gibt es sogar ein haufeb Geld zu gewinnen.
 

Landei

Top Contributor
Na ja, ein char beansprucht ja zwei byte. Wenn man nur "normale" Zeichen (unter 256) hat, sich die Mühe mit der Umwandlung machen will und auf etwas Speed verzichten kann, wäre eine auf einem byte-Array basierende Struktur (z.B. von trove) natürlich speicherfreundlicher.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
sserio StringBuilder und Strings Java Basics - Anfänger-Themen 8
Kotelettklopfer Stringbuilder mit print ausgeben Java Basics - Anfänger-Themen 83
C Long value an Stringbuilder übergeben, equals Methode funktioniert nicht Java Basics - Anfänger-Themen 2
P Methode trim() ohne StringBuilder Java Basics - Anfänger-Themen 1
P Stringbuilder richtig einsetzen Java Basics - Anfänger-Themen 1
W Teilstring durch Teilstring mittels StringBuilder ersetzen Java Basics - Anfänger-Themen 7
P Schleife für insert() und delete() im StringBuilder in Verbindung mit indexOf() Java Basics - Anfänger-Themen 7
G Wozu ist die Methode offsetByCodePoints(int, int) beim StringBuilder sinnvoll? Java Basics - Anfänger-Themen 1
G Wie kann ich einem StringBuilder einen int Wert formatiert hinzufügen? Java Basics - Anfänger-Themen 8
G Gibt es eine Methode die bei einem StringBuilder n mal das Zeichen c hinzufügt? Java Basics - Anfänger-Themen 6
G StringBuilder .setLength Methode wirkungslos? Java Basics - Anfänger-Themen 2
F StringBuilder: Zeilenumbruch nach x Zeichen ohne Worttrennung Java Basics - Anfänger-Themen 1
K StringBuilder Objekt überschreiben - Speicherverbrauch Java Basics - Anfänger-Themen 3
R [Erledigt]Fehler beim löschen von einzelnen Buchstaben aus StringBuilder Java Basics - Anfänger-Themen 1
H Suche Vergleichstabelle für die Klassen String und StringBuilder Java Basics - Anfänger-Themen 1
R Frage zum StringBuilder Java Basics - Anfänger-Themen 7
F Scanner + Stringbuilder geben leeren String aus wenn Umlaute enthalten sind Java Basics - Anfänger-Themen 29
M Array erweitern ohne Stringbuilder Java Basics - Anfänger-Themen 6
E StringBuilder.delete Problem Java Basics - Anfänger-Themen 2
J StringBuilder / String zusammensetzen Java Basics - Anfänger-Themen 2
A Datentypen Stringbuilder vollständig leeren Java Basics - Anfänger-Themen 6
F Problem bei StringBuilder Methoden Java Basics - Anfänger-Themen 11
C String oder StringBuilder? Java Basics - Anfänger-Themen 13
Java-Insel StringBuilder Zeilenumbrüche erkennen Java Basics - Anfänger-Themen 3
L StringBuilder Probleme in einer Klasse Java Basics - Anfänger-Themen 4
S im StringBuilder Zeichenketten ersetzen Java Basics - Anfänger-Themen 6
J StringBuilder initialisieren und Löschbefehl Java Basics - Anfänger-Themen 20
M Gittermuster mit Stringbuilder und einfacher Schleife erstellen Java Basics - Anfänger-Themen 19
B Stringbuilder verwenden Java Basics - Anfänger-Themen 15
S StringBuilder Java Basics - Anfänger-Themen 13
J Strings und StringBuilder Java Basics - Anfänger-Themen 12
K StringBuilder notwendig ab wann? Java Basics - Anfänger-Themen 42
H Array + StringBuilder in eine Textdatei speichern.laden. Java Basics - Anfänger-Themen 7
D StringBuilder Java Basics - Anfänger-Themen 10
N String oder StringBuffer/StringBuilder Java Basics - Anfänger-Themen 6
D OutOfMemoryError Java Basics - Anfänger-Themen 5
S Java memory fehler: Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap spa Java Basics - Anfänger-Themen 5
U Exception: OutOfMemoryError Java Basics - Anfänger-Themen 11
D Java - OutOfMemoryError beim Parsen Java Basics - Anfänger-Themen 15
? outOfMemoryError Java Basics - Anfänger-Themen 5
C 'OutOfMemoryError: Java heap space' Java Basics - Anfänger-Themen 5
M OutOfMemoryError beim Datei einlesen Java Basics - Anfänger-Themen 17
D java.lang.outofmemoryerror java heap space bei Hashtable Java Basics - Anfänger-Themen 3
neurox java.lang.OutOfMemoryError: Java heap space Java Basics - Anfänger-Themen 18
A Unerwarteter OutOfMemoryError Java Basics - Anfänger-Themen 4
E java.lang.OutOfMemoryError beim Rotieren eines Images Java Basics - Anfänger-Themen 14
B java.lang.OutOfMemoryError: Java heap space bei Musikplayer Java Basics - Anfänger-Themen 7
G Waveplayer - java.lang.OutOfMemoryError Java Basics - Anfänger-Themen 2
G Frage zu itext -> OutOfMemoryError Java Basics - Anfänger-Themen 5
C OutOfMemoryError Java Basics - Anfänger-Themen 16
M BufferedImage erzeugt OutOfMemoryError Java Basics - Anfänger-Themen 10
S OutOfMemoryError: Java heap space Java Basics - Anfänger-Themen 6
lin JScrollPane & OutOfMemoryError Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben