您好我正在研究terraria克隆。我有动态块加载系统(如果chunk是可见的加载他)但我有问题当我想要看到chunk时不可见。我的毁灭是这样的:
public void destroy() {
blocks = null;
background_blocks = null;
light_map = null;
}
但那不想工作,这仍然在RAM中。有人可以解释原因吗? (抱歉英文不好)
答案 0 :(得分:1)
抱歉,我无法理解你的要求。我想你可能想知道:
为什么当你设置变量null时,数组仍在RAM中?
Java有一个 GC 系统,它收集未使用的变量并从ram中删除它们。但是请记住,在对象变成垃圾后GC不会运行。何时运行GC取决于系统的情绪。因此,即使您将其设置为null,也不会在几天后从ram中清除它。
如果这不是你想要的,请告诉我。