java - Java 中的数组和垃圾回收

标签 java garbage-collection

假设我有一个数组 a,其中数组的类型为 T。将元素设置为 null 将其标记为垃圾收集。

例如,如果我执行 a[36] = null,或者我是否需要做更多的事情,比如还将 T 类型的对象中的字段设置为

最佳答案

在 Java 中,对象存储在堆中,而变量/引用存储在堆栈中。 GC 执行所谓的“循环”,检查哪些变量不再引用实际数据类型,并检查对象是否仍在范围内引用。正如 mario 所提到的,当没有任何对象持有对它的引用时,该对象最终将被收集,但是在一些性能/内存关键应用程序中,将对象设置为 null 并尝试加速垃圾收集过程已知会提供边际性能优势。在这种情况下,我不会太担心。

关于java - Java 中的数组和垃圾回收,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38037548/

相关文章:

c# - GC 与 C# 和 C++ 在同一解决方案中

.net - GC中断和TPL

java - 处理已弃用的方法

java - 将参数传递给 TestNG 运行 - Gradle

JavaFX 进度条不会高于 0.1

java - spring容器的垃圾收集

java - 将哈希表作为参数传递给方法会抛出空指针异常

java - Hibernate Search 是 Lucene 的干净抽象吗?

Ruby WeakRef 具有隐式竞争条件?

.net - GC何时决定收集第2代?