有-Xmx和max-heap-size(jnlp)选项可用于设置Java应用程序可以使用的最大内存。如果未指定这些选项,则只允许应用程序使用系统中少量的可用物理内存。这就是为什么人们玩-Xmx来允许应用程序使用更多内存的原因。但这对我来说真的是一场噩梦,因为客户端机器上可能会有不同的内存量,甚至操作系统也应该考虑在内。有没有办法让java应用程序使用系统中最大的可用内存?谢谢.
2ledvvac1#
-XX:DefaultMaxRAMFraction=1
字符串
不适用于Web启动。
jogvjijk2#
不幸的是,我所知道的最好的方法是编写一个简单的启动器(可能是一个shell脚本或批处理文件)来检查系统,确定一个合适的-Xmx值,然后启动Java应用程序。一旦JVM初始化,就不可能更改这些值。
2条答案
按热度按时间2ledvvac1#
字符串
不适用于Web启动。
jogvjijk2#
不幸的是,我所知道的最好的方法是编写一个简单的启动器(可能是一个shell脚本或批处理文件)来检查系统,确定一个合适的-Xmx值,然后启动Java应用程序。一旦JVM初始化,就不可能更改这些值。