破坏后仍然在RAM中的Java阵列

时间:2015-03-14 11:37:06

标签: java load ram destroy

您好我正在研究terraria克隆。我有动态块加载系统(如果chunk是可见的加载他)但我有问题当我想要看到chunk时不可见。我的毁灭是这样的:

public void destroy() {
    blocks = null;
    background_blocks = null;
    light_map = null;
}

但那不想工作,这仍然在RAM中。有人可以解释原因吗? (抱歉英文不好)

1 个答案:

答案 0 :(得分:1)

抱歉,我无法理解你的要求。我想你可能想知道:

为什么当你设置变量null时,数组仍在RAM中?

Java有一个 GC 系统,它收集未使用的变量并从ram中删除它们。但是请记住,在对象变成垃圾后GC不会运行。何时运行GC取决于系统的情绪。因此,即使您将其设置为null,也不会在几天后从ram中清除它。

如果这不是你想要的,请告诉我。