gpt4 book ai didi

java - JVM 在内存不足错误期间的行为?列表 s = new ArrayList();

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:31:00 24 4
gpt4 key购买 nike

try {
for(;;) {
s.add("Pradeep");
}
} finally {
System.out.println("In Finally");
}

在try block 中jvm内存不足,那么jvm在没有内存的情况下如何执行finally block ?

输出:

In Finally
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space

最佳答案

大概 System.out.println 调用比 s.add("Pradeep") 调用需要更少的内存。

例如,如果 s 是一个 ArrayList,则 s.add 调用可能会导致列表尝试将其容量加倍。这可能是一个非常需要内存的操作,因此即使 JVM 无法执行这种相对昂贵的任务,它仍可以继续执行也就不足为奇了。

关于java - JVM 在内存不足错误期间的行为?列表 s = new ArrayList<String>();,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7753443/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com