你能比JVM GC可以处理的更快地创建对象吗? OOM会发生吗?

时间:2013-12-14 03:19:52

标签: java garbage-collection out-of-memory

我只是想知道如果以下列方式创建/删除对象,GC是否能够处理它?<​​/ p>

  1. 创造数百万个物品。
  2. 等待5分钟。
  3. 删除对象
  4. 删除后立即创建它们(无需等待/延迟)
  5. 我认为在运行GC时CPU使用率会上升,但GC是否有可能在尝试回收堆时无法捕获?

1 个答案:

答案 0 :(得分:3)

如果堆存活了最初的激增,你就没事了。

如果分配了太多对象,你可以使用OOM,速度与它无关。

但是如果你没有比堆可以处理更多的活动对象,你就不会去OOM。分配新对象的一部分是检查是否需要GC。所以你不能“超越它”。