GC의 특징으로는 런타임 시간 동안 언제 가비지가 수집될지 예측할 수 없다는 것입니다. 그러나 System.gc(), Runtime.gc() 메서드를 사용하여 GC를 실행하기 위한 코드를 작성할 수 있습니다. 하지만 System.gc()를 이용해 가비지 컬렉션이 일어나도록 할 경우, 모든 스레드가 중단되기 때문에 사용해서는 안됩니다.
JVM에 플래그를 설정하는 것입니다.
플래그를 사용하면 사용할 garbage collector(ex: Serial, G1 등), 힙의 초기 및 최대 크기, 힙 섹션 크기 (ex: Young Generation, Old Generation) 등을 조정할 수 있습니다.