Geschrieben von schmoelz am 08.02.2005, 08:26

Hallo,

In diesem Thread stelle ich euch den Garbage Collector vor:

Java unterstützt die Möglichkeit, Speicher zur Laufzeit zu allokieren.
Dies geschieht explizit mit dem Schlüsselwort new und implizit bei der
Deklaration von lokalen Variablen. Lokale Variable und Parameter
allokieren Speicher am Stack. Dieser Speicher wird automatisch wieder
freigegeben, wenn die Methode terminiert. Mit new angeforderter Speicher
liegt hingegen immer am Heap und wird daher bei Ende der Methode nicht
automatisch freigegeben. Im Gegensatz zu anderen Sprachen läuft in der
JVM ein eigener Thread, der sogenannte Garbage Collector, dessen
Aufgabe es ist, Speicherplatz für unreferenzierte Objekte wieder
freizugeben. Eine explizite Freigabe durch den Programmierer ist nicht
vorgesehen. Obwohl der Garbage Collector automatisch arbeitet, gibt es
die Möglichkeit mit System.gc() oder Runtime.gc() den Garbage Collector
anzustoßen. Da es sich dabei aber um einen Thread niedriger Priorität
handelt, kann damit der Zeitpunkt der Speicherfreigabe nicht bestimmt
werden. Eine wesentliche Aussage in diesem Zusammenhang
lautet: "Garbage collection cannot be forced or sceduled."

Vereinfacht gesagt gibt er Speicherplatz von unreferenzierten Objekten wieder frei.

So mehr gibts dazu leider nicht zu sagen ...
Hoffe es hat euch weitergebracht ....

mfg schm8lz

Bewertung Anzahl
6
42,9 %
3 Bewertungen
5
14,3 %
1 Bewertungen
3
14,3 %
1 Bewertungen
1
28,6 %
2 Bewertungen