在 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
广告