-1

可能重复:
非服务器类机器上 Xmx、Xms、MaxPermSize 的默认值

我们正在使用 Sun JVM,并且需要知道分配给 MaxPermSize 的默认值

我们没有向 JVM 传递任何参数

来自这个线程为什么 PermGen 的默认大小这么小?我知道它是64MB。在所有情况下都是 64MB 还是基于系统 RAM 大小?

4

2 回答 2

4

-XX:+PrintFlagsFinal您可以通过包含命令行选项来找出任何 HotSpot JVM 标志/参数的值。

许多参数的默认值取决于 JVM 版本、硬件/OS 平台和/或物理内存大小。


FWIW - 在我的机器上 MaxPermSize 的默认值是85983232...根据上述方法。

于 2013-01-05T07:25:08.270 回答
2

它不依赖于可用的 RAM,但它确实依赖于:

  • 您正在使用的 JVM 版本 - 旧版本分配的内存较少,因为当时计算机的 RAM 较少
  • 架构(64bit需要32bit以上,所以默认内存也更大)
  • 实际的操作系统配置,因为某些操作系统可能会配置不同的默认值,尽管这实际上并不是表现不同的 JVM
于 2013-01-05T06:27:40.773 回答