JVM memory management with the GC

In the following diagrams, we have the heap memory areas, Eden, S0, S1, and Tenured, repeated in the rows numbered 1 to 13 (to the right-hand side of each row). Each row represents how the memory areas look at a certain age time.

Objects allocated in the memory areas are depicted with numbers inside them, denoting the generation or age that they belong to. Generation is a measure of how many times an object has moved from one memory area to another. A generation is complete when a memory area is filled up with objects and needs to move all of its live objects to the next memory area.

In step 1 in the following diagram, objects are being created and hence start to allocate memory in Eden. New data structures always ...

Get WildFly Performance Tuning now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.