本文目錄一覽:
- 1、java內存溢出怎麼更改虛擬機大小
- 2、Eclipse怎樣修改java虛擬機內存
- 3、java中怎樣設置虛擬機的內存大小
- 4、如何修改jvm內存 內存設置過大
- 5、aix 怎麼調節java虛擬機佔用內存大小
java內存溢出怎麼更改虛擬機大小
修改虛擬內存步驟如下:
1、設置Default VM Arguments
在myEclipse中,打開Windows- Preferences-Java-Installed JREs-點擊正在使用的JDK-Edit-Default VM Arguments文本框中輸入:-Xms64m -Xmx256m
2、如果是web工程還報內存溢出,可能就要設置tomcat內存。
(1)tomcat的安裝根目錄%tomcat%bin/catalina.bat文件,SET JAVA_OPTS 一行;
(2)myeclipse配置web伺服器配置 Window—Preferences—Myeclipse—Servers—tomcat 5.x—JDK的Optional Java VM arguments配置為:
-Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m。
Eclipse怎樣修改java虛擬機內存
你好,一般默認情況下是利用C盤的剩餘空間來做虛擬內存的,因此C盤的剩餘空間越大對系統運行就越好,虛擬內存是隨著你的使用而動態地變化的,這樣C盤就容易產生磁碟碎片,影響系統運行速度,所以,最好將虛擬內存設置在其它分區,如D盤中。
1、右鍵點「我的電腦」,左鍵點「屬性」,點選「高級」選項卡,點「性能」里的「設置」按鈕,再選「高級」選項卡,點下面的「更改」按鈕,所彈出的窗口就是虛擬內存設置窗口,一般默認的虛擬內存是從小到大的一段取值範圍,這就是虛擬內存變化大小的範圍,最好給它一個固定值,這樣就不容易產生磁碟碎片了,具體數值根據你的物理內存大小來定,一般為物理內存的1.5到2倍,如內存為256M,那麼應該設置256*1.5=384M,或者乾脆512M。
2、設置方法如下:
假設內存為256M,虛擬內存放在D盤,先要將默認的清除,保持C盤為選中狀態,單選「無分頁文件(N)」再按「設置」按鈕,此時C盤旁的虛擬內存就消失了,然後選中D盤,單選「自定義大小」,在下面的「初始大小」和「最大值」兩個方框里都添上512,再點一下「設置」按鈕,會看到D盤的旁邊出現了「512-512」的字樣,這樣就說明設置好了,再一路確定,最終,系統會要重新啟動,重啟一下,便完成了設置。
3、注意:虛擬內存只能有一個,只放在一個盤中!
java中怎樣設置虛擬機的內存大小
如果你的程序是可運行的jar包的話,可以使用:
java -server -Xmx3550m -Xms3550m -Xss128k -XX:NewRatio=4 -XX:SurvivorRatio=4 -XX:MaxPermSize=16m -XX:MaxTenuringThreshold=0 myJarName.jar
如果是tomcat的話:
修改TOMCAT_HOME/bin/catalina.sh
位置cygwin=false前。
JAVA_OPTS=” -server -Xmx3550m -Xms3550m -Xss128k -XX:NewRatio=4 -XX:SurvivorRatio=4 -XX:MaxPermSize=16m -XX:MaxTenuringThreshold=0″
下面是參數說明:
-Xmx5g:設置JVM最大可用內存為5G。
-Xms5g:設置JVM初始內存為5G。此值可以設置與-Xmx相同,以避免每次垃圾回收完成後JVM重新分配內存。
-Xmn2g:設置年輕代大小為2G。整個堆內存大小 = 年輕代大小 + 年老代大小 + 持久代大小 。持久代一般固定大小為64m,所以增大年輕代後,將會減小年老代大小。此值對系統性能影響較大,Sun官方推薦配置為整個堆的3/8。
-XX:+UseParNewGC:設置年輕代為並行收集。可與CMS收集同時使用。JDK5.0以上,JVM會根據系統配置自行設置,所以無需再設置此值。
-XX:ParallelGCThreads=8:配置並行收集器的線程數,即:同時多少個線程一起進行垃圾回收。此值最好配置與處理器數目相等。
-XX:SurvivorRatio=6:設置年輕代中Eden區與Survivor區的大小比值。根據經驗設置為6,則兩個Survivor區與一個Eden區的比值為2:6,一個Survivor區占整個年輕代的1/8。
-XX:MaxTenuringThreshold=30: 設置垃圾最大年齡(次數)。如果設置為0的話,則年輕代對象不經過Survivor區直接進入年老代。對於年老代比較多的應用,可以提高效率。如果將此值 設置為一個較大值,則年輕代對象會在Survivor區進行多次複製,這樣可以增加對象再年輕代的存活時間,增加在年輕代即被回收的概率。設置為30表示 一個對象如果在Survivor空間移動30次還沒有被回收就放入年老代。
-XX:+UseConcMarkSweepGC:設置年老代為並發收集。測試配置這個參數以後,參數-XX:NewRatio=4就失效了,所以,此時年輕代大小最好用-Xmn設置,因此這個參數不建議使用。
如何修改jvm內存 內存設置過大
-Xmx Java Heap最大值,默認值為物理內存的1/4,最佳設值應該視物理內存大小及計算機內其他內存開銷而定;
-Xms Java Heap初始值,Server端JVM最好將-Xms和-Xmx設為相同值,開發測試機JVM可以保留默認值;
-Xmn Java Heap Young區大小,不熟悉最好保留默認值; -Xss 每個線程的Stack大小,不熟悉最好保留默認值;
2. 如何分配JVM內存設置:
(1)當在命令提示符下啟動並使用JVM時(只對當前運行的類Test生效): java -Xmx128m -Xms64m -Xmn32m -Xss16m Test (2)當在集成開發環境下(如eclipse)啟動並使用JVM時:
a. 在eclipse根目錄下打開eclipse.ini,默認內容為(這裡設置的是運行當前開發工具的JVM內存分配): -vmargs -Xms40m -Xmx256m
-vmargs表示以下為虛擬機設置參數,可修改其中的參數值,也可添加-Xmn,-Xss,另外,eclipse.ini內還可以設置非堆內存,如:-XX:PermSize=56m,-XX:MaxPermSize=128m.
此處設置的參數值可以通過以下配置在開發工具的狀態欄顯示: 在eclipse根目錄下創建文件options,文件內容為:org.eclipse.ui/perf/showHeapStatus=true
修改eclipse根目錄下的eclipse.ini文件,在開頭處添加如下內容: -debug options -vm javaw.exe
重新啟動eclipse,就可以看到下方狀態條多了JVM信息.
b. 打開eclipse-窗口-首選項-Java-已安裝的JRE(對在當前開發環境中運行的java程序皆生效)
編輯當前使用的JRE,在預設VM參數中輸入:-Xmx128m -Xms64m -Xmn32m -Xss16m
c. 打開eclipse-運行-運行-Java應用程序(只對所設置的java類生效) 選定需設置內存分配的類-自變數,在VM自變數中輸入:-Xmx128m -Xms64m
選定需設置內存分配的類-自變數,在VM自變數中輸入:-Xmx128m -Xms64m -Xmn32m -Xss16m
注:如果在同一開發環境中同時進行了b和c設置,則b設置生效,c設置無效,如:
開發環境的設置為:-Xmx256m,而類Test的設置為:-Xmx128m -Xms64m,則運行Test時生效的設置為: -Xmx256m -Xms64m
(3)當在伺服器環境下(如Tomcat)啟動並使用JVM時(對當前伺服器環境下所以Java程序生效): a. 設置環境變數: 變數名:CATALINA_OPTS
變數值:-Xmx128m -Xms64m -Xmn32m -Xss16m
3
b. 打開Tomcat根目錄下的bin文件夾,編輯catalina.bat,將其中
的%CATALINA_OPTS%(共有四處)替換為:-Xmx128m -Xms64m -Xmn32m -Xss16m
aix 怎麼調節java虛擬機佔用內存大小
在一些規模稍大的應用中,Java虛擬機(JVM)的內存設置尤為重要,想在項目中取得好的效率,GC(垃圾回收)的設置是第一步。PermGenspace:全稱是PermanentGenerationspace.就是說是永久保存的區域,用於存放Class和Meta信息,Class在被Load的
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/297476.html