JAVA(-Xms,Xmx,Xmn-XX:newSize,-XX:MaxnewSize,-XX:PermSize,-XX:MaxPermSize)區別


1、-Xms:表示java虛擬機堆區內存初始內存分配的大小,通常為操作系統可用內存的1/64大小即可,但仍需按照實際情況進行分配。
2、-Xmx:表示java虛擬機堆區內存可被分配的最大上限,通常為操作系統可用內存的1/4大小。

開發過程中,通常會將-Xms 與-Xmx兩個參數的配置相同的值,其目的是為了能夠在java垃圾回收機制清理完堆區后不需要重新分隔計算堆區的大小而浪費資源。

1、-XX:newSize:表示新生代初始內存的大小,應該小於-Xms的值;
2、-XX:MaxnewSize:表示新生代可被分配的內存的最大上限;當然這個值應該小於-Xmx的值;
3、-Xmn:至於這個參數則是對 -XX:newSize、-XX:MaxnewSize兩個參數的同時配置,也就是說如果通過-Xmn來配置新生代的內存大小,那么-XX:newSize = -XX:MaxnewSize = -Xmn,雖然會很方便,但需要注意的是這個參數是在JDK1.4版本以后才使用的。

java虛擬機對非堆區內存配置的兩個參數:
1、-XX:PermSize:表示非堆區初始內存分配大小(方法區)
2、-XX:MaxPermSize:表示對非堆區分配的內存的最大上限(方法區)。
    
在配置之前一定要慎重的考慮一下自身軟件所需要的非堆區內存大小,因為此處內存是不會被java垃圾回收機制進行處理的地方。並且更加要注意的是最大堆內存與最大非堆內存的和絕對不能夠超出操作系統的可用內存。

原文:https://blog.csdn.net/lovewebeye/article/details/80911838


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM