Hallo an alle,
bekomme leider folgenden Fehler :
Kurz vor der Exception hab ich mir den Speicher auslesen lassen:
Habe laut google meine eclipse.ini auch angepasst.
Habe mir VisualJVM installiert und sehe auch wie der Heap ansteigt (Verbrauch). Jedoch sehe ich da nur ca 1000 MB als maximum. Obwohl ich auf 2000 MB gesetzt habe.
Ich weiß in welcher Schleife dieser Fehler Vorkommt. Mit kleinen Dateien funktioniert alles. Sobalds aber etwas größter wird machts peng!
Hab ich was falsch gemacht bzgl. der ini? Oder wie lässt ich der Speicher erhöhen (am besten in eclipse)?
Gruß
bekomme leider folgenden Fehler :
Code:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at alterapp.Transformer.createNewTables(Transformer.java:202)
at alterapp.Transformer.<init>(Transformer.java:27)
at alterapp.Alterapp.main(Alterapp.java:21)
Kurz vor der Exception hab ich mir den Speicher auslesen lassen:
Code:
Total Memory907870208
Free Memory113931008
Habe laut google meine eclipse.ini auch angepasst.
Code:
-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.1.R36x_v20100810
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
2000M
-showsplash
org.eclipse.platform
-vmargs
-Xms40m
-Xmx2000m
Habe mir VisualJVM installiert und sehe auch wie der Heap ansteigt (Verbrauch). Jedoch sehe ich da nur ca 1000 MB als maximum. Obwohl ich auf 2000 MB gesetzt habe.
Ich weiß in welcher Schleife dieser Fehler Vorkommt. Mit kleinen Dateien funktioniert alles. Sobalds aber etwas größter wird machts peng!
Hab ich was falsch gemacht bzgl. der ini? Oder wie lässt ich der Speicher erhöhen (am besten in eclipse)?
Java:
private int createNewTables(TreeSet<TableHeader> genColName, Reader table1,
Reader table2) {
List<String[]> tabelle1 = table1.read_csv();
List<String[]> tabelle2 = table2.read_csv();
List<String[]> newTable1 = new ArrayList<String[]>();
// newTable1.add(genColName.toArray(new String[genColName.size()]));
List<String[]> newTable2 = new ArrayList<String[]>();
boolean isFirst = true;
for (String[] lZeile : tabelle1) {
if (isFirst) {
isFirst = false;
continue;
}
// AA # BB # CC
String[] lNeueZeile = new String[genColName.size() + 1];
for (int i = 1; i < lZeile.length; i++) {
TableHeader lTableHeader = this.headerMap.get(lZeile[i]);
lNeueZeile[lTableHeader.pos + 1] = "1";
}
System.out.println("Total Memory"+Runtime.getRuntime().totalMemory());
System.out.println("Free Memory"+Runtime.getRuntime().freeMemory());
lNeueZeile[0] = lZeile[0];
newTable1.add(lNeueZeile);
// 0 1
// advertise_ # advertis_AA # # ## # #
// 1
}
Gruß
Zuletzt bearbeitet: