调用 System.gc() 或 finalize() 方法时内部 (JVM) 发生了什么?
这真的是收集垃圾还是降低性能?
最佳答案
当您调用 System.gc() 时究竟发生了什么依赖于 JVM。 JVM 将此调用视为一个建议,它可能是运行垃圾收集器的好时机,所以不要依赖它。
对象的 finalize()当 JVM 确定不再有对该对象的可访问引用时,垃圾收集器对该对象运行该方法。你不应该在你的代码中调用它。请记住,finalize() 不会在您的程序丢失最终引用时被调用,而是在垃圾收集器运行的 future 时间被调用,所以不要依赖它发生在某个时间特定时间点(或所有时间点)。
关于java - 当调用 System.gc() 或 finalize() 方法时,内部(JVM)发生了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/892665/