Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java에서 명시적으로 GC(가비지 수집)를 호출하려면 어떻게 해야 합니까?


객체에 대한 참조가 더 이상 없으면 객체가 종료되고 가비지 컬렉션 JVM에 의해 자동으로 완료될 이러한 최종 객체 수집을 시작합니다. . 가비지 수집을 직접 호출할 수 있지만 GC 즉시 실행을 시작합니다.

쓰레기 컬렉션 두 가지 방법으로 명시적으로

  • System.gc() 메서드
  • Runtime.gc() 메소드

java.lang. Runtime.freeMemory() 메소드는 Java Virtual Machine(JVM)의 여유 메모리 양을 반환합니다. . gc() 호출 메소드로 인해 freeMemory에서 반환된 값이 증가할 수 있습니다. .

예시

public class GarbageCollectionTest {
   public static void main(String args[]) {
      System.out.println(Runtime.getRuntime().freeMemory());
      for (int i=0; i<= 100000; i++) {
         Double d = new Double(300);
      }
      System.out.println(Runtime.getRuntime().freeMemory());
      System.gc();
      System.out.println(Runtime.getRuntime().freeMemory());
   }
}

출력

15648632
13273472
15970072