JVM架构(015)_XmnXmsXmxXss有什么区别

转载 2016年08月30日 15:35:30

1、XmnXmsXmxXss有什么区别

首先,Xmn、Xms、Xmx、Xss都是JVM对内存的配置参数,我们可以根据不同需要区修改这些参数,以达到运行程序的最好效果。

了解jvm内存管理看这里:jvm是如何管理内存的

Xms、Xmx

-Xms、-Xmx分配用来设置进程堆内存的最小大小和最大大小。

了解堆内存看这里:java堆内存是什么样的 
了解java垃圾回收机制看这里:java垃圾回收机制是什么

Xmn

-Xmn用来设置堆内新生代的大小。通过这个值我们也可以得到老生代的大小:-Xmx减去-Xmn

了解堆新生代垃圾处理算法看这里:什么是新生代的复制算法

Xss

-Xss设置每个线程可使用的内存大小。

在相同物理内存下,减小这个值能生成更多的线程。当然操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右。

除了这些配置,JVM还有非常多的配置,常用的如下:

  1. -XX:PermSize、-XX:MaxPermSize 
    分配用来设置永久代的最小大小和最大大小。Java 8以后移除了方法区,取而代之的是本地元空间Metaspace,大小由-XX:MetaspaceSize和-XX:MaxMetaspaceSize调节。

  2. -XX:MaxTenuringThreshold 
    设置转入老生代的存活次数。如果是0,则直接跳过新生代进入老生代。

  3. -XX:NewRatio 
    设置老生代和新生代的比值,例如该值为3,则表示新生代与老生代比值为1:3。

JVM调优之 -Xms -Xmx -Xmn -Xss

原文地址    http://unixboy.iteye.com/blog/174173 堆大小设置 JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制...

转: JVM调优总结 -Xms -Xmx -Xmn -Xss

JVM调优总结 -Xms -Xmx -Xmn -Xss,详情见如下:http://unixboy.iteye.com/blog/174173

JVM调优总结 -Xms -Xmx -Xmn -Xss

堆大小设置 JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操...

Java千百问_07JVM架构(015)_XmnXmsXmxXss有什么区别

点击进入_更多_Java千百问1、XmnXmsXmxXss有什么区别首先,Xmn、Xms、Xmx、Xss都是JVM对内存的配置参数,我们可以根据不同需要区修改这些参数,以达到运行程序的最好效果。了解j...

【JAVA学习】“-Xmx1024m -Xms1024m -Xmn512m -Xss256k”——Java运行参数(转)

-Xmx1024m -Xms1024m -Xmn512m -Xss256k”——Java运行参数(转)

【JAVA学习】“-Xmx1024m -Xms1024m -Xmn512m -Xss256k”——Java运行参数

年轻代 年老代概念 http://jefferent.iteye.com/blog/1123677   JVM的堆的内存, 是通过下面面两个参数控制的  -Xms 最小堆的大小, 也...

JVM 内存设置大小(Xms Xmx PermSize MaxPermSize 区别)

Eclipse崩溃,错误提示: MyEclipse has detected that less than 5% of the 64MB of Perm  Gen (Non-heap memory...
  • damaolly
  • damaolly
  • 2014年06月12日 13:53
  • 58527

JAVA -Xms -Xmx -XX:PermSize -XX:MaxPermSize 区别

java  -Xms -Xmx -XX:PermSize -XX:MaxPermSize       在做java开发时尤其是大型软件开发时经常会遇到内存溢出的问题,比如说OutOfMemoryE...

JVM 参数配置及详解 -Xms -Xmx -Xmn -Xss 调优总结

堆大小设置 JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制.32位系统 下,一般限制在1.5G~2G;64...

JVM调优总结 -Xms -Xmx -Xmn -Xss

Xms 是指设定程序启动时占用内存大小。一般来讲,大点,程序会启动的快一点,但是也可能会导致机器暂时间变慢。 Xmx 是指设定程序运行期间最大可占用的内存大小。如果程序运行需要占用更多的内存,超出了这...
  • RickyIT
  • RickyIT
  • 2016年12月27日 14:09
  • 4019
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JVM架构(015)_XmnXmsXmxXss有什么区别
举报原因:
原因补充:

(最多只允许输入30个字)