可以设置的最大JVM内存和JVM版本以及操作系统版本有关,一般Windows下1200-1500M左右,Linux下最大能到2600M;
具体可以使用命令 java -XmxXXXXM -version 来进行测试(如:java -Xmx1024M -version),然后逐渐的增大XXXX的值,如果执行正常就表示指定的内存大小可用,否则会打印错误信息。
测试32位win、java 1.7,最大xmx为1442M
C:\Documents and Settings\juyizhou>java -Xmx1442M -version
java version "1.7.0_09"
Java(TM) SE Runtime Environment (build 1.7.0_09-b05)
Java HotSpot(TM) Client VM (build 23.5-b02, mixed mode)
C:\Documents and Settings\juyizhou>java -Xmx1443M -version
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
分享到:
相关推荐
-Xmx 设置 JVM 的最大可用内存,-Xms 设置 JVM 的初始内存大小。二者的值可以相同,以避免每次垃圾回收完成后 JVM 重新分配内存。 -Xmn 设置年轻代的大小,整个 JVM 内存大小=年轻代大小 + 年老代大小 + 持久代...
- `-Xmx`:设置JVM堆内存的最大大小。 - `-XX:PermSize`:设置非堆内存的初始大小。 - `-XX:MaxPermSize`:设置非堆内存的最大大小。 - **启动问题**:当`-Xmx`和`-XX:MaxPermSize`设置过大时,某些机器可能...
2. `-Xmx`: 这个参数用来设定JVM的最大堆内存大小。它是Java应用能使用的最大内存限制,防止因内存不足导致的`OutofMemoryError`。例如,`-Xmx1024m`表示最大堆内存为1GB。确保`-Xms`小于或等于`-Xmx`,否则JVM无法...
这是JVM运行过程中堆内存能够动态扩展的最大值。合理设置最大堆内存可以避免因内存不足而导致的OutOfMemoryError错误。 - **-XX:MaxPermSize=128m**:设置永久代(Permanent Generation)的最大大小为128MB。永久代...
* -Xmx:Java Heap 最大值 * -Xms:Java Heap 初始值 * -Xmn:Java Heap Young 区大小 这些参数的默认值可以根据物理内存大小及计算机内其他内存开销而定。 二、 设置 JVM 内存的方法 1. 在命令提示符下启动并...
通常情况下,JVM 会自动根据 `-Xms` 和 `-Xmx` 来分配年轻代的大小,但如果设置了 `-Xmn`,则 JVM 会优先使用该值。 4. **`-XX:PermSize`**:设置永久代 (Permanent Generation) 的初始大小。需要注意的是,从 JDK 8...
- 其中,`-Xms`表示初始堆内存大小,`-Xmx`表示最大堆内存大小,`-XX:PermSize`表示永久代初始大小,`-XX:MaxPermSize`表示永久代最大大小,`-XX:MaxNewSize`表示新生代最大大小,`-Djava.awt.headless=true`则表示...
JVM 使用-XX:PermSize 设置非堆内存初始值,默认是物理内存的 1/64;由XX:MaxPermSize 设置最大非堆内存的大小,默认是物理内存的 1/4。 JVM 内存限制 JVM 内存限制是指 JVM 对于内存的最大限制。服务器一般设置-...
例如,设置`-Xms2048m -Xmx2048m`可以将堆内存的最小和最大值都设置为2GB。 - **JVM默认堆内存配置**:JVM默认情况下,最小堆内存为物理内存的1/64,最大堆内存为物理内存的1/4。对于8GB物理内存的机器,这意味着...
合理设置这两个值可以避免频繁的内存扩展和收缩,提高系统稳定性。 2. 新生代和老年代内存比例: - `-XX:NewRatio`:这个参数用来设置年轻代和老年代的比例。例如,`-XX:NewRatio=3` 表示年轻代与老年代的比例为1:...
- `-XX:PermSize` 和 `-XX:MaxPermSize` 分别设置永久代(`Permanent Generation`)的最小值和最大值,用于存储类元数据。在Java 8及以后版本中,这部分被元空间(`Metaspace`)取代。 2. **线程栈大小**: - `-Xss` ...
-Xms 用于设置 JVM 初始化堆的大小,-Xmx 用于设置 JVM 堆的最大值。这些值的大小一般根据需要进行设置。初始化堆的大小执行了虚拟机在启动时向系统申请的内存的大小。一般而言,这个参数不重要。但是有的应用程序在...
当内存剩余不到 40 %时,JVM 会增大堆到 Xmx 设置的值,当内存剩余超过 70 %时,JVM 会减小堆到 Xms 设置的值。 垃圾回收 GC 的角色是在 JVM 中调用垃圾回收的机制。GC 的触发机会增加 GC 的触发机会。为了避免...
一般来说,堆的最大值设置为可用内存的 80%。 5. JVM 垃圾回收机制:JVM 的垃圾回收机制可以自动地将无用的对象回收,并释放内存。垃圾回收的速度和频率与应用程序和堆的大小有关。 6. Tomcat 配置文件:Tomcat 的...
- 当`-Xmx`和`-XX:MaxPermSize`设置过大,超过JVM能分配的最大内存或系统允许的最大内存时,Eclipse可能无法启动。这是因为JVM内存分配受限于物理内存和操作系统的内存限制。 - 如果`-Xms`设置大于`-Xmx`,或者`-...
- **-Xmx**: 设置JVM的最大堆内存大小。 - **-Xms**: 设置JVM初始堆内存大小,通常建议设置与-Xmx相同以避免频繁调整堆内存大小带来的性能损失。 - **-Xmn**: 设置年轻代的内存大小,这直接影响到整个堆内存的分配。...
当堆内存中的空余空间低于40%时,JVM会自动增加堆内存直到达到`-Xmx`所设定的最大值;而当空余空间超过70%时,JVM则会减少堆内存至`-Xms`所设定的最小值。为了避免每次垃圾回收之后调整堆内存大小带来的性能损耗,...