对于数据加载,我使用 groovy 脚本。我在哪里使用多线程概念。但是,当我在一定时间间隔后开始数据加载时,数据加载停止并且 JVM 开始进行垃圾收集。 我的问题是,在方法结束时使用后,将对象设置为 null 并清除方法中的集合是个好主意吗?
其他最佳方法也即将到来 提前致谢。
最佳答案
这取决于您使用什么类型的变量来引用该对象。
- 如果该变量是该方法的本地变量,并且没有对该对象的其他引用,那么将变量设置为 null 没有任何帮助,因为它无论如何都会超出范围。
- 如果变量是类的成员,并且您正在运行该方法的对象将保留一段时间,那么在完成后将变量清空将会产生影响与那个物体;因为该变量仍然在类中的代码范围内。如果存在可以通过某种方式访问的引用,则该对象不会被垃圾回收。
关于java - 对于垃圾收集来说,如果我们将对象设为 null 并在方法结束时使用后清除收集,这是个好主意,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27032286/