Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Có bao nhiêu cách gọi Garbage Collector (GC) trong Java?

Garbage collection trong Java do daemon thread gọi là Garbage Collector (GC) thực hiện. Thay vì chờ JVM chạy GC, chúng ta có thể yêu cầu JVM chạy GC. Không đảm bảo JVM sẽ chấp nhận yêu cầu.

Trong Java, có hai cách gọi GC thủ công:

  • Dùng lớp System
  • Dùng lớp Runtime

Dùng lớp System

Lớp System có phương thức static gc() yêu cầu JVM gọi garbage collector.

Ví dụ

public class SystemClassTest { 
    public static void main(String[] args){ 
        SystemClassTest test = new SystemClassTest(); 
        test = null; 
        System.gc(); 
    } 
    public void finalize() { 
        System.out.println("Garbage collected"); 
    } 
}

Kết quả

Garbage collected

Dùng lớp Runtime

Runtime là singleton class, lấy đối tượng runtime bằng getRuntime(). gc() của Runtime là phương thức instance.

Ví dụ

public class RuntimeClassTest { 
    public static void main(String[] args) { 
        RuntimeClassTest test = new RuntimeClassTest(); 
        test = null; 
        Runtime.getRuntime().gc(); 
    } 
    public void finalize() { 
        System.out.println("Garbage Collected"); 
    } 
}

Kết quả

Garbage collected