SPEISEKARTE

Ermitteln Sie die Java-Speichernutzung

Inhaltsverzeichnis

Java ErinnerungHolen Sie sich die Nutzung Runtime.getRuntime().totalMemory, freeMemory

Java Gibt Informationen zu „Gesamt“, „Verwendet“ und „Maximal nutzbar“ für Informationen zum Arbeitsspeicher der virtuellen Maschine zurück.
Die Erklärung jedes Elements lautet wie folgt.

  • gesamt...Runtime.getRuntime().totalMemory()Dies ist die Menge an Speicher, die der Java Virtual Machine zugewiesen ist.
  • zu verwendende Menge...Runtime.getRuntime().totalMemory()-Runtime.getRuntime().freeMemory()werden,
    Speichernutzung der derzeit im Speicher zugewiesenen Objekte.
  • maximal nutzbar...Runtime.getRuntime().maxMemory()ist die maximale Speichermenge, die die Java Virtual Machine zu verwenden versucht.
    Nähert sich die genutzte Menge der Gesamtmenge und kann der freie Speicher auch mit Garbage Collection nicht gesichert werden, wird die Java Virtual Machine auf die „maximal verfügbare“ Kapazität erweitert.

Beispielprogramm

/** * Gibt Informationen über den Gesamtspeicher der Java Virtual Machine, die verwendete Menge und * die maximale Speichermenge zurück, die sie zu verwenden versucht. * @return Java Virtual Machine-Speicherinformationen */ public static String getMemoryInfo() { DecimalFormat f1 = new DecimalFormat("#,###KB"); DecimalFormat f2 = new DecimalFormat("##.#"); long free = Runtime.getRuntime ( ).freeMemory() / 1024; long total = Runtime.getRuntime().totalMemory() / 1024; long max = Runtime.getRuntime().maxMemory() / 1024; long used = total - free; double ratio = ( used * 100 / (double)total); String info = "Java-Speicherinformationen: Total = + f1.format(total) + ", " + "Used = + f1.format(used) + " (" + f2.format( Verhältnis) + „%),“ + „maximum available="+f1.format(max); Rückgabeinfo; }


Ausführungsergebnis 1

◆Ausführungsbeispiel

public static void main(String[] args) { System.out.println(getMemoryInfo()); }

◆Ausgabeergebnis

Java-Speicherinformationen: Gesamt = 1.984 KB, Nutzung = 458 KB (23.1%), maximal nutzbar = 65.088 KB

Ausführungsergebnis 2

◆Ausführungsbeispiel
Versuchen Sie, die Java-Heap-Größe zu ändern und auszuführen.
Der Wert der Java-Heap-Größe kann als Option des Java-Befehls angegeben werden.

java -Xms64m -Xmx512m Haupt

-Xms anfängliche Heap-Größe
Gibt die anfängliche Speicherzuweisung für die Java Virtual Machine an. Der Standardwert ist 2 MB.
-Xmx maximale Heap-Größe
Gibt die maximale Speicherzuweisung für die Java Virtual Machine an. Der Standardwert ist 64 MB.

public static void main(String[] args) { System.out.println(getMemoryInfo()); }

◆Ausgabeergebnis

Informationen zum Java-Speicher: Gesamt = 65.088 KB, Nutzung = 524 KB (0,81 TP3T), maximal nutzbar = 520.256 KB

„Total Runtime.getRuntime().totalMemory()“ ist-Xms, „Maximal verfügbare Runtime.getRuntime().maxMemory()“ ist-XmxEs ist verlinkt mit.

  • URLをコピーしました!
Inhaltsverzeichnis