在Java中,我们如何显式地调用垃圾回收(GC)呢?

王林
王林 转载
2023-09-05 18:29:12 507浏览

在Java中,我们如何显式地调用垃圾回收(GC)呢?

当没有对一个对象的引用时,该对象将被终结,并且当垃圾回收开始时,这些终结的对象将被自动收集,这将由JVM完成。我们可以直接调用垃圾回收,但不能保证GC会立即开始执行。

我们可以通过两种方式显式地调用垃圾回收

  • System.gc() 方法
  • Runtime.gc() 方法

java.lang.Runtime.freeMemory() 方法返回Java虚拟机(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

以上就是在Java中,我们如何显式地调用垃圾回收(GC)呢?的详细内容,更多请关注php中文网其它相关文章!

声明:本文转载于:tutorialspoint,如有侵犯,请联系admin@php.cn删除