gpt4 book ai didi

java - 运行最大可用 "maximum heap size"的 java 应用程序

转载 作者:行者123 更新时间:2023-11-30 11:51:20 25 4
gpt4 key购买 nike

如何计算可用于 Java 应用程序的最大“最大堆大小”

  • 在 Windows 中使用 cmd 命令?
  • 在 Linux 中使用 sh 命令?

我想将 -Xmx 值设置得尽可能大。

我想确保 java 不会提示 -Xmx 值太大。


来自 a linked answer to another question我了解了 32 位 Java 的以下值:

OS: Windows XP SP2, JVM: Sun 1.6.0_02, Max heap size: 1470 MBOS: Windows XP SP2, JVM: IBM 1.5, Max heap size: 1810 MBOS: Windows Server 2003 SE, JVM: IBM 1.5, Max heap size: 1850 MBOS: Linux 2.6, JVM: IBM 1.5, Max heap size: 2750 MB 

如何自动检测安装了哪个操作系统和哪个 Java?好的,我可以默认为最小值 - 1470 MB。但是我如何确定在较新版本的 Java 中此值不会缩小?

对于 64 位 Java,这个问题仍然悬而未决。

最佳答案

尝试使用 2 GB 或内存运行 java,减少数量,重复直到 java 运行。

Linux:

#!/bin/sh
let mem=2000
while [ 1 ]
do
java "-Xmx"$mem"m" -version > /dev/null 2>&1
if [ $? -eq 0 ]
then
break
fi
let mem=$mem-100
if [ $mem -lt 100 ]
then
#// something went wrong with our test
let mem=700
break
fi
done
echo $mem

window :

@echo off
setlocal enabledelayedexpansion
set mem=2000
:decmem
set /a mem=mem-100
if !mem! == 0 (
rem // something went wrong with our test
set mem=700
goto start
)
java -Xmx!mem!m -version > nul 2> nul
if errorlevel 1 goto decmem
:start
echo !mem!

关于java - 运行最大可用 "maximum heap size"的 java 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7540095/

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