在下面的代码中
List<SomeObject> someObjectList = new ArrayList<SomeObject>();
do {
SomeObject someObject = new SomeObject();
someObjectList.add(someObject);
} while(some condition is met);
我的问题
- someObject 什么时候会被抓取?
- 我在这里泄漏内存了吗?
最佳答案
When will someObject be grabage collected?
someObject
将在无法访问时进行 GC。在提供的简单示例中,这可能会在以下任一情况发生时发生:
someObjectList
不再可用someObject
已从someObjectList
中删除(因此不再可访问)
Am I leaking memory here?
据我所知,您的代码中没有任何内存泄漏点。
关于java - 在循环中添加到集合中的对象何时会被垃圾收集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11478612/