Überlauf des Javaspeichers verhindern

ZoOo4

Mitglied
Hallo liebe Community,
ich hoffe meine umständliche Überschrift wird durch ein Beispiel klarer. Also es geht darum, dass eine Funktion nach einer bestimmten Zeit immer wieder ausgeführt werden soll. Nur bin ich mit meiner jetzigen Lösung auf die Nase gefallen.

Beispiel:
Java:
public void funktion() {
		überprüfe etwas();
        sleep(120 000); // Als Beispiel habe ich jetzt einfach mal 2 Minuten genommen
        funktion();
	}

Die Funktion ruft sich ja immer wieder neu auf und erzeugt in diesem Beispiel eine Endlosschleife, womit irgendwann der zugewiesene Speicherplatz voll ist (korrigiert mich, wenn ich falsch liege). Wie kann ich diese Problem clever umgehen? :)

MfG
ZoOo4
 
M

Marcinek

Gast
Indem man nicht die selbe Methode endlos mal aufruft?

vielecht suchst du nach so einem Konstrukt

Java:
while(true) {
  // do it

}
 
Zuletzt bearbeitet von einem Moderator:

ZoOo4

Mitglied
Darüber hatte ich auch schon nachgedacht aber ich dachte es geht vllt. noch eleganter mit Multithreading (oder irgendetwas anderes, was ich bisher nicht kenne) :D. Ja/Nein (?), ansonsten closed
 

nrg

Top Contributor
also der speicher läuft nicht voll, sondern der methodenstack wird zu groß. bei einem stack von knapp über 7000 methoden ist dann schluss. rekursionen nutzt man nur kontrolliert also wenn man auch zu 100% sicher stellen kann, dass der stack nicht zu groß wird. und eleganter ist das nicht, nein. mit multithreading hats auch nicht im entferntesten zu tun :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Datentypen Unklarheit bei Typecast / arithm. Überlauf Allgemeine Java-Themen 2
FoolMoon Warnung beim Überlauf? Allgemeine Java-Themen 3
F Überlauf abfangen Allgemeine Java-Themen 1
welterde Heap Überlauf Allgemeine Java-Themen 2
D Stackoverflow verhindern Allgemeine Java-Themen 4
T Fenster schließen verhindern Allgemeine Java-Themen 13
N Input/Output Verhindern, dass log-Einträge auf Console erscheinen Allgemeine Java-Themen 2
V JNI Call Crash verhindern (abfangen) Allgemeine Java-Themen 2
nrg Decompile verhindern Allgemeine Java-Themen 2
K HashMap sorting verhindern Allgemeine Java-Themen 10
H Mehrfachen Start des Programms verhindern Allgemeine Java-Themen 6
B Java OutOfMemory Error verhindern, Resourcenbedarf präventiv abschätzen? Allgemeine Java-Themen 19
T doppeltes Starten verhindern Allgemeine Java-Themen 14
B Exception bei leerem JTable verhindern Allgemeine Java-Themen 10
P Mehrere Instanzen der selben Appl. verhindern Allgemeine Java-Themen 12
J Wie die gleichzeitige Ausführung mehrerer Tasks trotz Multithreading verhindern? Allgemeine Java-Themen 2
T Mehrmaligen Start verhindern Allgemeine Java-Themen 19
Daniel_L Mehrfache Ausführung desselben Threads/Tasks verhindern? Allgemeine Java-Themen 4
Schandro StackOverflowError bei Rekursion verhindern Allgemeine Java-Themen 14
V Zu schnelle Buttonklicks verhindern? Allgemeine Java-Themen 8
K Zeilenumbruch in Eclipse beim Codeformater verhindern Allgemeine Java-Themen 10
C Flimmern wegen eines Thread verhindern Allgemeine Java-Themen 8
M Acrobat Viewer Bean - EULA-Anzeige verhindern Allgemeine Java-Themen 4
G KeyListener: Wiederholtes Aufrufen von KeyPressed verhindern Allgemeine Java-Themen 3
reibi Doppelten Programmaufruf verhindern Allgemeine Java-Themen 11
S Verhindern das Programm mehrmals geöffnet wird Allgemeine Java-Themen 26
G Wie das Beenden eines Javaprogrammes verhindern? Allgemeine Java-Themen 6
F [TableModel] Doppelte einträge finden (bzw. verhindern) Allgemeine Java-Themen 3
P Mehrere Instanzen beim IE verhindern Allgemeine Java-Themen 11
thE_29 Escape Zeichen verhindern Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben