垃圾收集器可以保证销毁所有不需要的和未使用的对象, 如果我们手动取消对象会怎样,例如。列表<字符串> = null , 此操作会对绩效产生负面或正面影响吗?
我使用的是Java。 谢谢。
最佳答案
不是内存处理细节方面的专家,但我可以分享我所知道的。 GC 将收集未使用的所有内容。因此,当您消除对对象的最后一个引用(通过显式无效)时,您将把它标记为垃圾回收。这并不能保证它会立即被收集。
您可以显式地尝试调用 GC,但您会看到很多人建议不要这样做。我的理解是,对 GC 的调用充其量是不可靠的。 GC 和 Java 的重点在于,作为程序员,您不需要太担心内存分配。至于性能,除非您对堆空间有严格的限制,否则您不应该注意到 GC Activity 。
关于java - 资源处理实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10026791/