tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
9
ZUGRIFFE
2855
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    flashray flashray ist offline Mitglied Rubin
    Registriert seit
    Sep 2005
    Ort
    Mannheim
    Beiträge
    1.325
    Hallo,

    kann man über
    System.setProperty()
    den Heap Space einstellen.


    Vg Erdal
     

  2. #2
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.886
    Blog-Einträge
    29
    Hallo,

    nein. Das kannst du nur beim Starten der JVM als Option mit geben (-Xms Startgröße -Xmx Max-größe)

    Gruß Tom
     
    Java rocks!
    How to become a good Java Programmer?
    Does IT in Java and .Net
    The only valid measurement of code quality: WTFs / minute
    Blog
    Xing
    Twitter

  3. #3
    flashray flashray ist offline Mitglied Rubin
    Registriert seit
    Sep 2005
    Ort
    Mannheim
    Beiträge
    1.325
    Hallo Tom,

    gibt es keine andere Alternative dies von der Applikation aus zu machen?


    Vg Erdal
     

  4. #4
    limago limago ist offline Mitglied Brokat
    Registriert seit
    May 2007
    Ort
    Riedstadt (Hessen)
    Beiträge
    354
    Hi Erdal,

    das Problem hinter der Frage würde mich interessieren. Vielleicht gibt es ja eine andere Lösung....

    Gruß Jo
     

  5. #5
    flashray flashray ist offline Mitglied Rubin
    Registriert seit
    Sep 2005
    Ort
    Mannheim
    Beiträge
    1.325
    Hallo Jo,

    die Applikation an der ich zur Zeit arbeite braucht mehr Heap Space als standardmäßig eingestellt. Von Vorteil wäre es wenn der Anwender das selber nicht einstellen müsste. Sondern es schon in der Applikation integriert vorhanden wäre.

    Was mir einfällt, könnte man es nicht in die Manifest Datei einer Jar schreiben.


    Vg Erdal
     

  6. #6
    MeinerEiner_80 Tutorials.de Gastzugang
    Moin!
    In das Manifest kann man es auch nicht schreiben, aber
    warum nicht einfach eine Batch Datei mitgeben, welche das Starten des Programms übernimmt und die erforderlichen Parametern setzt?

    *grüssle*
    MeinerEiner
     

  7. #7
    MeinerEiner_80 Tutorials.de Gastzugang
    Da fällt mir ein, wenn man es umständlich machen will ,
    kannst du ja auch eine zusätzliches Archiv erstellen welches der Nutzer starten soll., Dieses würde dann dein eigentliches Archiv mit den entsprechenden Parametern starten..

    *grüssle*
    MeinerEiner
     

  8. #8
    Avatar von zerix
    zerix zerix ist offline Hausmeister
    tutorials.de Moderator
    Registriert seit
    May 2005
    Beiträge
    4.335
    Hallo,

    warum nicht einfach eine Batch Datei mitgeben, welche das Starten des Programms übernimmt und die erforderlichen Parametern setzt?
    Naja, dann müsste man aber für alle Betriebssysteme eine Startdatei mitgeben.
    Man könnte aber eine "startup"-Klasse schreiben, die das Programm mit den entsprechenden Parametern startet. Dann bräuchte man nur eine Datei. Diese Klasse könnte man direkt mit in das Jar-File packen oder in ein eigenes.
    Also ich hab das noch nicht probiert, müsste aber so funktionieren.

    MFG

    zEriX


    EDIT:
    Da war ja schon wieder Meiner_Einer schneller.
    Geändert von zerix (24.05.07 um 14:12 Uhr)
     
    Es ist schwer Allwissend zu sein. Aber ich komme damit klar. ;-)

  9. #9
    flashray flashray ist offline Mitglied Rubin
    Registriert seit
    Sep 2005
    Ort
    Mannheim
    Beiträge
    1.325
    Hallo,

    habe die vorgeschlagenen Ideen umgesetzt. Es funktioniert !

    Wenn man beide Klassen in eine jar packt. Und die Starter Klasse als Main-Klasse im Manifest definiert wird, müsste es theoretisch klappen.


    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    import java.io.IOException;
    import java.util.Scanner;
     
    public class Starter {
     
        public static void main(String[] args) throws IOException {
            ProcessBuilder builder = new ProcessBuilder("java", "-Xmx256m", "Application");
            Process p = builder.start();
     
            Scanner s = new Scanner(p.getInputStream()).useDelimiter("/n");
            while (s.hasNext())
                System.out.println(s.next());
        }
    }

    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    
    public class Application {
     
        public static void main(String[] args) {
            System.out.println("App Begin");
            Runtime r = Runtime.getRuntime();
            System.out.println(r.maxMemory());
            System.out.println(r.totalMemory());
            System.out.println(r.freeMemory());
            System.out.println("App End");
        }
    }

    Ausgabe
    Code :
    1
    2
    3
    4
    5
    
    App Begin
    266403840
    5177344
    4960288
    App End


    Vg Erdal
     

  10. #10
    Avatar von zerix
    zerix zerix ist offline Hausmeister
    tutorials.de Moderator
    Registriert seit
    May 2005
    Beiträge
    4.335
    Das ist ja das was ich meinte.

    MFG

    zEriX
     
    Es ist schwer Allwissend zu sein. Aber ich komme damit klar. ;-)

Ähnliche Themen

  1. [Glassfish] Genaue Anleitung zur Erweiterung des heap space
    Von Bexx im Forum Hosting & Webserver
    Antworten: 0
    Letzter Beitrag: 10.03.10, 11:55
  2. java heap space problem
    Von avi im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 0
    Letzter Beitrag: 27.11.09, 10:43
  3. Datei schreiben und Heap Space
    Von fsmarine im Forum Java
    Antworten: 4
    Letzter Beitrag: 24.10.08, 18:32
  4. MySql JTable Probleme mit Heap Space
    Von PUM1212 im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 0
    Letzter Beitrag: 03.12.07, 03:33
  5. Applet heap space
    Von magnet im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 0
    Letzter Beitrag: 29.11.05, 13:06