작동 방식:
•
Mark-and-Sweep: 가장 기본적인 GC 알고리즘으로, GC가 실행되면 먼저 객체를 "마킹"하여 참조되고 있는 객체를 식별합니다. 이후 "스윕" 단계에서 참조되지 않은 객체를 제거하여 메모리를 해제합니다.
•
Generational Garbage Collection: 객체를 연령대(Generation)로 나누어 관리하는 방식입니다. 객체를 Young Generation, Old Generation 등으로 분류하여, Young Generation에서는 주로 단기 객체를 관리하고 Old Generation에서는 오래된 객체를 관리합니다.
•
Stop-the-World: GC가 실행되는 동안 JVM의 모든 작업을 멈추게 하는 현상입니다. 성능에 영향을 줄 수 있기 때문에 이 시간을 최소화하는 다양한 최적화 기술이 사용됩니다.
•
Parallel GC, CMS(Concurrent Mark-Sweep), G1 GC: 다양한 GC 전략이 있으며, JVM 옵션을 통해 선택할 수 있습니다. 각각의 알고리즘은 GC의 성능을 최적화하거나 특정 시나리오에 더 적합하게 설계되었습니다.