日期:2014-05-20  浏览次数:20768 次

如何修改代码防止内存泄露
这段代码存在内存泄露问题.如何改正这个问题
谢谢!
Vector v=new Vector(10); 
for (int i=1;i<100; i++)

{

Object o=new Object();

v.add(o);

o=null;

}

//此时,所有的Object对象都没有被释放,因为变量v引用这些对象。
我应该在什么位置将v设置为null


------解决方案--------------------
这个问题问得好怪啊。
那你循环完了到底还用不用v对象了?
如果要用的话,Object怎么能被释放呢?要是释放了,你又怎么用呢?
最后你写一下v = null好了
------解决方案--------------------
用完V对象之后removeAll();
------解决方案--------------------
把你的Vector拆分成几个,比如5个,每个Vector放20个Object,每处理完20个Vector就把一个Vector=null