We previously detailed the following garbage collection approaches used by the JVM prior to Java 9. These are still plausible garbage collection algorithms:
- CMS garbage collection
- Serial garbage collection
- Parallel garbage collection
- G1 garbage collection
Let's briefly recap each of these approaches:
- CMS garbage collection: The CMS garbage collection algorithm scans heap memory using multiple threads. Using this approach, the JVM marks objects for removal and then makes a sweep to actually remove them.
- Serial garbage collection: This approach uses a thread-freezing schema on a single thread. When the garbage collection is in progress, it freezes all other threads until garbage collection operations have concluded. ...