Show TOC

Funktionsweise des Local Garbage CollectorsLocate this document in the navigation structure

Verwendung

In Java werden Objekte auf dem Java-Heap allokiert. Wenn nicht genügend Platz auf dem Heap ist, wird eine Garbage Collection (GC) gestartet. Nicht mehr referenzierte Objekte werden dabei freigegeben. Der Heap ist in Young und Old Generation aufgeteilt:

Neue Objekte werden in der Young Generation angelegt. Objekte, die zwei Garbage Collections überlebt haben, werden in die Old Generation verschoben ( promoted). Für die beiden Regionen (Young und Old Generation) kann die Garbage Collection separat durchgeführt werden. Dementsprechend beinhaltet der Statistiksatz in der STAD (s.u.) Informationen über die Anzahl der Garbage Collections in Young und Old Generation ( GC count local young und old) sowie die verbrauchte Zeit ( GC CPU/elapsed time local young/old). Es ist möglich, dass per System.gc() eine explizite Garbage Collection gestartet wurde (sichtbar unter Explicit GC count local).

Die Menge des allokierten Speichers in der Young Generation wird in Java Heap allocated local akkumuliert.

Speicher, der im lokalen Heap in einer der beiden Generationen freigegeben wird (durch eine GC), wird in Java Heap freed local young/old hinzugefügt. Ferner wird der maximale Füllstand in der Young und Old Generation sowie im gemeinsamen Speicher nach der jeweiligen GC in Java Heap max alloc local young/old respektive Java Heap max alloc shared abgespeichert.

Shared Pool

Java-Objekte können in einem gemeinsamen Speicherbereich als Shared Closures allokiert werden. Shared Closures werden im Speicherbereich Shared Data im Shared Pool angelegt (vgl.

Memory Management im VM Container).

Wird eine Shared Closure erzeugt, wird der Wert Java Heap allocated shared entsprechend erhöht. Alte oder als gelöscht markierte und nicht mehr referenzierte Shared Closures werden von der Shared Garbage Collection entfernt (vgl. Funktionsweise des Shared Garbage Collectors).

Das Shared Memory kann mittels SM53 (vgl. VMC Systemadministration) manuell bereinigt werden ( Explicit GC count shared).

Java Memory Management: Übersicht im System

Im Workload Monitor (Transaktion STAD) finden Sie eine Detailübersicht zum Java Memory Management.