12.1.5 Systemresourcencheck mit der Klasse Runtime

 Die Java Runtime bietet die Möglichkeit die folgenden Systemwerte auszulesen:

  • verfügbare Prozessoren
  • freier Speicher
  • maximal verfügbarer Speicher
  • gesamter allokierter Speicher der VM

Die Klasse bietet ebenfalls die Möglichkeit eine Reihe von Operationen zu starten:

  • expliziter Aufruf eines "Garbage Collectors"
  • expliziter Aufruf des Finalizers
  • externer Aufruf eines Betriebssystemkommandos
  • beenden des Prozesses
  • laden von dynamischen Bibliotheken

Warnung: Alle aufgeführten Operationen haben erheblichen Einfluss auf die gesamte VM. Im normalen Entwicklungsumfeld größerer Anwendungen führen die oben genannten Operationen in der Regel zu erheblichen negativen Seiteneffekten für Sicherheit, Stabilität und Performanz von Anwendungen.

Die folgende Methode nutzt die Klasse Runtime um die wichtigsten Werte des Prozesses auszulesen:

public static void systemStatus(){
        Runtime r = Runtime.getRuntime();
        System.out.println("*** System Status ***");
        System.out.println("Prozessoren :       " + r.availableProcessors());
        System.out.println("Freier Speicher:    " + r.freeMemory());
        System.out.println("Maximaler Speicher: " + r.maxMemory());
        System.out.println("Gesamter Speicher:  " + r.totalMemory());
        System.out.println("***  ***");
    }