前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >-Xms256m -Xmx256m,栈堆内存中常见的字眼

-Xms256m -Xmx256m,栈堆内存中常见的字眼

作者头像
JanYork_小简
发布2022-03-29 12:35:57
1.1K0
发布2022-03-29 12:35:57
举报
文章被收录于专栏:小简技术栈

不知道有没有细心的小伙伴发现,IDEA的启动项(自定义VM选项),或者一些其他代码启动的地方,存在一些不起眼的语句,比如Xms256m -Xmx256m这些,那这些玩意都是啥意思有啥用呢?

我打开浏览器搜索了一下,发现这居然是对于栈堆内存的控制,比如我们看下面这个语句。

代码语言:javascript
复制
-Xms256m -Xmx256m -XX:PermSize=64M -XX:MaxNewSize=64m -XX:MaxPermSize=256m

Xms

-Xms:是初始化堆内存值

Xmx

-Xmx:是堆内存最大值

知道这两个玩意是啥了,那他们有什么用呢?

这两个值是Tomcat服务器内存分配是动态的最好体现。

为什么这么说呢?

因为刚启动时系统给Tomcat分配的内存为-Xms值,当项目占用的内存达到初始化内存的一定比例后(百度上说是80%,我没去试过)才会将给Tomcat分配-Xmx大小的内存,反之亦然当项目占用的内存降至-Xmx的40%时,系统会释放部分内存,又将-Xms大小的内存划分给tomcat服务器。

那么还有几个其他的字段是啥意思呢?

-XX:PermSize和-XX:MaxPermSize

-XX:PermSize和-XX:MaxPermSize是初始化永久保存区,原理同内存是一样的。

-XX:MAxNewSize

-XX:MAxNewSize是什么意思,我也没去详细搜索过,好像也搜索不到啥,但看到有要求这个值的大小应该设置为-Xmx的1/4。

就当作一个知识扩展,了解了解吧。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022 年 03 月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Xms
  • Xmx
  • -XX:PermSize和-XX:MaxPermSize
  • -XX:MAxNewSize
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档