【发布时间】:2010-11-13 20:11:12
【问题描述】:
我正在运行一个 J2ME 应用程序并遇到了一些严重的内存问题。
所以我建立了另一个步骤来清除巨大的输入字符串并处理它的数据并清除它。
但是直到我设置 input = null 而不是 input = "" 才解决问题。
在内存管理方面不应该一样吗?有人可以解释一下区别吗?
谢谢,
雷特
for(int x = 0; x <= ChunksPartCount; x++)
{
_model.setLoading_bar_progress((x * ChunkSize));
input += web_service.FullCompanyListChunksGet(x, ChunkSize);
if((x * ChunkSize) > 5000)
{
ReadXML(input);
input = null;
}
}
编辑:
我仍然想将答案标记为解决方案。我认为mmyers的言论是朝着正确的方向发展的。
【问题讨论】:
-
我猜这取决于 J2ME 垃圾收集器的工作方式,但是将
input重新分配给任何东西(null、""或""或"I like pizza")应该让 GC 回收巨大的输入字符串. -
对不起,我不知道答案。当我看到它时,我只知道一个错误的答案。
标签: java memory-management java-me garbage-collection