在 Java 中有多少種呼叫垃圾回收器 (GC) 的方法?


Java 中的垃圾回收由一個稱為垃圾收集器 (GC) 的守護執行緒執行。我們可以向 JVM 請求執行垃圾收集器,而不是等到 JVM 執行垃圾收集器。無法保證 JVM 會接受我們的請求。

在 Java 中,我們可以透過兩種方式手動呼叫垃圾收集器

  • 使用 System 類
  • 使用 Runtime 類

使用 System 類

System 類具有一個靜態方法 gc(),用於向 JVM 請求呼叫垃圾收集器。

示例

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");
   }
}

輸出

Garbage collected


使用 Runtime 類

Runtime 是 Java 中的一個單例類,我們可以使用 getRuntime() 方法獲取一個執行時物件。gc() 方法來自 Runtime 類,它是一個例項方法。

示例

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");
   }
}

輸出

Garbage collected

更新日期: 2020-07-02

1K+ 瀏覽

開啟您的 事業

透過完成課程獲得認證

開始
廣告
© . All rights reserved.