我们如何才能在 Java 中显式调用垃圾回收 (GC)?
当不再有任何对象引用时,将完成该对象,当 Garbage Collection 启动时,这些完成的对象会被收集,这将由 JVM 自动完成。我们可以直接调用垃圾收集,但这并不能保证 GC 会立即开始执行。
我们可以通过两种方式显式调用 Garbage Collection
- System.gc() 方法
- Runtime.gc() 方法
java.lang.Runtime.freeMemory() 方法返回 Java Virtual Machine (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
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
JavaScript
PHP