Hallo Leute...
Habe ein kleines Problem mit dem Arbeitsspeicher meines Programms.
Es läuft recht flüssig nur taucht momentan bei einigen Nutzern meines Programms folgender Fehler auf:
Die dazugehörige Methode (Konstruktor) ist folgende:
Der Fehler ist offensichtlich: Zu wenig Arbeitsspeicher den die JRE bereitstellt. Aber wie reagiere ich auf so einen Fehler? Ist es irgendwie möglich meinem Programm mehr Arbeitsspeicher zur Verfügung zu stellen?
Ich habe auch die RAM Werte des Programms bei den Nutzern auslesen lassen. Hier die Werte und wie ich sie bekommen habe:
RAM Total: 259522560
RAM Frei: 3448
RAM Aktuell: 259519208
Hoffe auf Hilfe!
Ocean15
Habe ein kleines Problem mit dem Arbeitsspeicher meines Programms.
Es läuft recht flüssig nur taucht momentan bei einigen Nutzern meines Programms folgender Fehler auf:
Java:
java.lang.OutOfMemoryError: Java heap space
at java.util.PriorityQueue.<init>(Unknown Source)
at angriffe.AngriffsverwaltungDorf.<init>(AngriffsverwaltungDorf.java:20)
at dorf.Dorf.<init>(Dorf.java:32)
at dorf.DorfManager.updateDoerfer(DorfManager.java:119)
at aufgaben.Executer.initDoerfer(Executer.java:123)
at aufgaben.Executer.doAufgabe(Executer.java:57)
at aufgaben.Executer.nextAufgabe(Executer.java:35)
at account.Account.action(Account.java:78)
at account.Accountverwaltung.doActions(Accountverwaltung.java:140)
at engine.ProgrammLoop.aktionen(ProgrammLoop.java:95)
at engine.ProgrammLoop.update(ProgrammLoop.java:77)
at engine.ProgrammLoop.run(ProgrammLoop.java:60)
at java.lang.Thread.run(Unknown Source)
Die dazugehörige Methode (Konstruktor) ist folgende:
Java:
public AngriffsverwaltungDorf(Account account, Dorf dorf) {
this.account = account;
this.dorf = dorf;
CompAngriffe comp = new CompAngriffe();
eigeneBefehle = new PriorityQueue<Angriff>(1000000,comp);
}
Der Fehler ist offensichtlich: Zu wenig Arbeitsspeicher den die JRE bereitstellt. Aber wie reagiere ich auf so einen Fehler? Ist es irgendwie möglich meinem Programm mehr Arbeitsspeicher zur Verfügung zu stellen?
Ich habe auch die RAM Werte des Programms bei den Nutzern auslesen lassen. Hier die Werte und wie ich sie bekommen habe:
RAM Total: 259522560
RAM Frei: 3448
RAM Aktuell: 259519208
Java:
String memoryTotal = String.valueOf(rt.totalMemory());
String memoryFree = String.valueOf(rt.freeMemory());
String memoryNow = String.valueOf(rt.totalMemory() - rt.freeMemory());
Hoffe auf Hilfe!
Ocean15