10

我基本上是一个 Weblogic 管理员,想通过在我的 Weblogic 实例中部署一个非常简单的 Java 代码(war/ear 文件)来模拟内存不足的情况。

我对 Java 编码知之甚少,所以有人可以提供我可以轻松打包为战争和部署的示例代码吗?

4

3 回答 3

18

这应该足够了:

long[][] ary = new long[Integer.MAX_VALUE][Integer.MAX_VALUE];

这将尝试分配 2^31 + 1 个内存块,每个大小为 2^34 字节。

于 2013-07-12T12:17:00.213 回答
8

你可以这样做final long[] l = new long[Integer.MAX_VALUE];它将分配 16Gb - 8 个字节。

或者你可以throw new OutOfMemoryError();

于 2013-07-12T12:22:07.640 回答
2

要模拟随时间消耗的内存,请尝试:

List<long[]> list = new LinkedList<long[]>();
while (true) {
  list.add(new long[65536]); // an arbitrary number
  // sleep(1) perhaps?
}
于 2013-07-12T12:38:07.333 回答