>  기사  >  Java  >  Java에서는 가비지 수집(GC)을 명시적으로 어떻게 호출합니까?

Java에서는 가비지 수집(GC)을 명시적으로 어떻게 호출합니까?

王林
王林앞으로
2023-09-05 18:29:12879검색

Java에서는 가비지 수집(GC)을 명시적으로 어떻게 호출합니까?

객체에 대한 참조가 없으면 객체가 마무리되고 Garbage Collection이 시작되면 이러한 마무리된 객체가 자동으로 수집되며 이는 JVM에 의해 수행됩니다. 가비지 수집을 직접 호출할 수 있지만 GC가 즉시 실행된다는 보장은 없습니다.

두 가지 방법으로 garbage collection을 명시적으로 호출할 수 있습니다.

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

java.lang.Runtime.freeMemory() 메서드는 JVM(Java Virtual Machine)의 여유 메모리 양입니다. gc() 메서드를 호출하면 freeMemory 반환 값이 증가할 수 있습니다.

Demo

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

위 내용은 Java에서는 가비지 수집(GC)을 명시적으로 어떻게 호출합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제