首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

几招轻巧搞定JVM内存设置

2013-12-29 
几招轻松搞定JVM内存设置-Xmx256m?-Xms64m ??(3)当在服务器环境下(如Tomcat)启动并使用JVM时(对当前服务器

几招轻松搞定JVM内存设置
-Xmx256m?-Xms64m ?

  • ?

    (3)当在服务器环境下(如Tomcat)启动并使用JVM时(对当前服务器环境下所以Java程序生效):

    a. 设置环境变量:

    变量名:CATALINA_OPTS

    变量值:-Xmx128m -Xms64m -Xmn32m -Xss16m

    b. 打开Tomcat根目录下的bin文件夹,编辑catalina.bat,将其中的%CATALINA_OPTS%(共有四处)替换为:-Xmx128m -Xms64m -Xmn32m -Xss16m

    二、查看JVM内存设置信息

    Runtime.getRuntime().maxMemory();? //最大可用内存,对应-Xmx

    Runtime.getRuntime().freeMemory();? //当前JVM空闲内存

    Runtime.getRuntime().totalMemory();? //当前JVM占用的内存总数,其值相当于当前JVM已使用的内存及freeMemory()的总和

    关于maxMemory(),freeMemory()和totalMemory():

    maxMemory()为JVM的最大可用内存,可通过-Xmx设置,默认值为物理内存的1/4,设值不能高于计算机物理内存;

    totalMemory()为当前JVM占用的内存总数,其值相当于当前JVM已使用的内存及freeMemory()的总和,会随着JVM使用内存的增加而增加;

    freeMemory()为当前JVM空闲内存,因为JVM只有在需要内存时才占用物理内存使用,所以freeMemory()的值一般情况下都很小,而JVM实际可用内存并不等于freeMemory(),而应该等于maxMemory()-totalMemory()+freeMemory()。及其设置JVM内存分配。

  • 热点排行