Java GC Tutorials, Detailed discussion of Young and Old Generation GCJava GC Tutorials, Detailed discussion of Young and Old Generation GC
In this Section you will learn the type of GC or garbage collection in Java.
In java, objects are dynamically allocated using new() keyword. But the key question is what happened to these objects when they have no use. How these objects are destroyed for later reallocation of their memory. In java this is done automatically through garbage collection. In other words it deallocate memory automatically which have no longer use. This technique is known as Garbage Collection.
In this way, java ensures that sufficient memory will available to your program. It (Garbage Collection) is controlled by the configuration parameters of the heap.
Note: Heap resides in the physical memory which is incorporated by the Java Virtual Machine(JVM) for the creation of objects. The configuration parameter of the heap are Xms & Xmx. You can use these configuration parameter as :
java ?Xms:256m Xmx:1g
It points that the Xms(minimum heap size) is 256Mb & Xmx(Maximum heap size) is !024Mb.
The garbage collection is of two types :
Before understanding Major/Minor GC, first you need to understand young generation.
Young Generation :
The temporary objects which are ,initially, not fully garbage collected. When these young generation become old, they become part of the old generation. Old generation is known as Minor GC. When Minor GC become fully garbage collected, it is known as Major GC.
You can check the Major/Minor GC as follows :
To check the Major/Minor GC , you need to start your application as follows :
java ?verbose:gc HelloWorld
The Output of the above should be like this :
GC 325407K->83000K(776768K), 0.2300771 secs