Каковы xms и Xmx значение параметров при запуске виртуальной машины? [дубликат]
этот вопрос уже есть ответ здесь:
Пожалуйста, объясните использование Xms и Xmx параметры в JVMs. Какие значения по умолчанию для них?
4 ответов:
флаг
Xmxзадает максимальный пул выделения памяти для виртуальной машины Java (JVM), в то время какXmsзадает начальный пул выделения памяти.это означает, что ваш JVM будет запущен с
Xmsобъем памяти и сможет использовать не болееXmxобъем памяти. Например, запуск JVM, как показано ниже, запустит его с 256 МБ памяти и позволит процессу использовать до 2048 Мб памяти:java -Xms256m -Xmx2048mпамять флаг также может быть задан в нескольких размерах, таких как килобайты, мегабайты и так далее.
-Xmx1024k -Xmx512m -Xmx8gThe
Xmsфлаг не имеет значения по умолчанию, иXmxобычно имеет значение по умолчанию 256 МБ. Обычно эти флаги используются, когда вы сталкиваетесь сjava.lang.OutOfMemoryError.при использовании этих настроек имейте в виду, что эти настройки предназначены для JVM кучу, и что JVM может/будет использовать больше памяти, чем просто размер размещенными для кучи. От Oracle документация:
обратите внимание, что JVM использует больше памяти, чем просто кучи. Например, методы Java, стеки потоков и собственные дескрипторы выделяются в памяти отдельно от кучи, а также внутренние структуры данных JVM.
выполнить команду
java -Xи вы получите список всех-Xварианты:C:\Users\Admin>java -X -Xmixed mixed mode execution (default) -Xint interpreted mode execution only -Xbootclasspath:<directories and zip/jar files separated by ;> set search path for bootstrap classes and resources -Xbootclasspath/a:<directories and zip/jar files separated by ;> append to end of bootstrap class path -Xbootclasspath/p:<directories and zip/jar files separated by ;> prepend in front of bootstrap class path -Xdiag show additional diagnostic messages -Xnoclassgc disable class garbage collection -Xincgc enable incremental garbage collection -Xloggc:<file> log GC status to a file with time stamps -Xbatch disable background compilation -Xms<size> set initial Java heap size......................... -Xmx<size> set maximum Java heap size......................... -Xss<size> set java thread stack size -Xprof output cpu profiling data -Xfuture enable strictest checks, anticipating future default -Xrs reduce use of OS signals by Java/VM (see documentation) -Xcheck:jni perform additional checks for JNI functions -Xshare:off do not attempt to use shared class data -Xshare:auto use shared class data if possible (default) -Xshare:on require using shared class data, otherwise fail. -XshowSettings show all settings and continue -XshowSettings:all show all settings and continue -XshowSettings:vm show all vm related settings and continue -XshowSettings:properties show all property settings and continue -XshowSettings:locale show all locale related settings and continueпараметры-X являются нестандартными и могут быть изменены без предварительного уведомления.
Я надеюсь, что это поможет вам понять Xms, Xmx, а также многие другие вещи, которые имеют наибольшее значение. :)
вы можете указать его в своей среде IDE. Например, для Eclipse в Выполнить Конфигурации→ параметры VM. Вы входите
-Xmx800m -Xms500m:
основная часть вопроса уже была рассмотрена выше. Просто добавьте часть значений по умолчанию.
согласно http://docs.oracle.com/cd/E13150_01/jrockit_jvm/jrockit/jrdocs/refman/optionX.html
значение по умолчанию Xmx значение будет зависеть от платформы, и объема памяти, доступной в системе.

Comments