amr*_*ngh 7 java garbage-collection memory-leaks
刚刚面试,被问到Java是否可能出现内存泄漏。我不知道答案。所以我想知道:
从更广泛的意义上来说,内存泄漏是指您继续保留不再需要且不再打算使用的已分配内存的任何情况。
考虑以下[诚然是人为的]示例:
public class LeakingClass {
private static final List<String> LEAK = new ArrayList<>();
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("What is your name? ");
while (in.hasNext()) {
name = in.next();
System.out.println("Hi " + name);
LEAK.add(name);
System.out.println("What is your name? ");
}
}
}
Run Code Online (Sandbox Code Playgroud)
该LEAK列表在每次迭代中都会增长,并且无法释放它,但它从未被使用过。这是一个泄漏。
| 归档时间: |
|
| 查看次数: |
678 次 |
| 最近记录: |