-Xmn jvm选项代表什么

Bhu*_*han 53 java jvm-arguments

我尝试在互联网上搜索-Xmn选项,但没有成功.

有人可以解释这代表什么,我如何使用它来调整JVM?

awk*_*ksp 61

这里:

-Xmn:年轻一代的堆大小

年轻一代代表所有具有短暂时间的物体.年轻代对象位于堆中的特定位置,垃圾收集器将经常通过堆中.所有新对象都被创建到年轻一代(称为"伊甸园").当一个物体在超过2-3 gc清洁后仍然"活着"时,它将被交换有一个"老一代":它们是"幸存者".

来自IBM的更"官方"来源:

-Xmn

使用-Xgcpolicy:gencon时,将新(托儿所)堆的初始大小和最大大小设置为指定值.相当于同时设置-Xmns和-Xmnx.如果设置-Xmns或-Xmnx,则无法设置-Xmn.如果尝试使用-Xmns或-Xmnx设置-Xmn,则VM将无法启动,并返回错误.默认情况下,根据系统的功能在内部选择-Xmn.您可以使用-verbose:sizes选项查找VM当前使用的值.

  • 第一个来源是错误的.年轻一代的大小不仅仅是伊甸园(只是年轻一代的一部分) (4认同)
  • @piotrek我会接受你的话.谢谢! (2认同)

noe*_*ego 9

来自Oracle的GC Performance Tuning培训文档:

-Xmn [size]:年轻代堆空间的大小.

强调性能的应用程序倾向于使用-Xmn来调整年轻代的大小,因为它结合了-XX:MaxNewSize和-XX:NewSize的使用,并且几乎总是将-XX:PermSize和-XX:MaxPermSize显式设置为相同的值.

简而言之,它将New GenerationNewSizeMaxNewSize值设置为相同的值.


dim*_*niy 5

-Xmn:年轻一代的堆大小年轻一代代表所有寿命短的对象。年轻的生成对象位于堆中的特定位置,垃圾收集器将经常通过该位置。将所有新对象创建到年轻一代区域(称为“ eden”)。当经过2-3 gc清洗后,某个存活对象仍然“存活”时,它将被交换并具有“旧一代”:它们是“存活者”。

好尺寸是33%

资源

  • 源链接已死。这是该链接的Wayback Machine存档:https://web.archive.org/web/20140613034154/http://www.avricot.com/blog/?post/2010/05/03/Get-started-with -java-JVM内存-(堆%2C-stack%2C-xss-xms-xmx-xmn ...) (2认同)