jdk 8 的内存参数修改



jdk内存实际是jvm内存,jvm有一个运行时数据区,其实就是对这一部分的大小分配。
运行时数据区通常包括这几个部分:程序计数器(Program Counter Register)、Java栈(VM Stack)、本地方法栈(Native Method Stack)、方法区(Method Area)、堆(Heap)

Xss:每个线程的stack大小(栈)
Xmx:JAVA HEAP的最大值、默认为物理内存的1/4
Xms:JAVA HEAP的初始值,server端最好Xms与Xmx一样
Xmn:JAVA HEAP young区的大小
XX:PermSize:设定内存的永久保存区域
XX:MaxPermSize:设定最大内存的永久保存区域

在JDK1.8中,取消了PermGen,取而代之的是Metaspace,
所以PermSize和MaxPermSize参数失效,取而代之的是
-XX:MetaspaceSize=64m -XX:MaxMetaspaceSize=128m

修改JDK内存
linux下:在tomcat的bin目录下编辑catalina.sh
cygwin=false上面加入

JAVA_OPTS="-Xms1024m -Xmx2048m -Xss1024K -XX:MetaspaceSize=512m -XX:MaxMetaspaceSize1024m"

出现异常Java.lang.OutOfMemoryError: Java heap space ,内存溢出异常。修改Eclipse中JVM的内存。

找到eclispe 中window->preferences->Java->Installed JRE ,点击右侧的Edit 按钮,在编辑界面中的 “Default VM Arguments ”选项中,填入如下值即可。

-Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m

优质内容筛选与推荐>>
1、《Java编程思想》读书笔记(11)
2、Zend Studio 9快捷键列表
3、mysql 优化学习笔记
4、多网卡时如何使用源地址ping目的地址,检测网络连通性。
5、Springboot2.x整合logback slf4j


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号