2 回答

TA貢獻1830條經(jīng)驗 獲得超9個贊
eclipse的jvm設置方法如下:
默認方式啟動Eclipse時,有關啟動時JVM參數(shù)是在Eclipse安裝目錄下的eclipse.ini文件中指定的.在命令行下,也可以通過參數(shù)-vmargs來達到此目的.其命令格式為:eclipse -vmargs <JVM參數(shù)設置>.舉例來說,命令eclipse -vmargs -Xmx512M用來設置Eclipse啟動時JVM的最大堆內(nèi)存(heap memory)
-vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M
堆內(nèi)存分配
JVM初始分配的內(nèi)存由-Xms指定,默認是物理內(nèi)存的1/64;JVM最大分配的內(nèi)存由-Xmx指定,默認是物理內(nèi)存的1/4.默認空余堆內(nèi)存小于40%時,JVM就會增大堆直到-Xmx的最大限制;空余堆內(nèi)存大于70%時,JVM會減少堆直到 -Xms的最小限制.因此服務器一般設置-Xms、-Xmx相等以避免在每次GC 后調(diào)整堆的大小.
非堆內(nèi)存分配
JVM使用-XX:PermSize設置非堆內(nèi)存初始值,默認是物理內(nèi)存的1/64;由XX:MaxPermSize設置最大非堆內(nèi)存的大小,默認是物理內(nèi)存的1/4.

TA貢獻1757條經(jīng)驗 獲得超8個贊
eclipse有啟動參數(shù)里設置jvm大小,因為eclipse運行時自己也需要jvm,所以eclipse.ini里設置的jvm大小不是具體某個程序運行時所用jvm的大小,這和具體程序運行的jvm大小無關。
那么怎么才能設置某個程序的jvm大小呢(當然控制臺運行的話不會存在這個問題,如:java -Xms256m -Xmx1024m classname,這樣就可以把當前程序的jvm大小給設定)?
因為eclipse里默認的一個程序的jvm配置為:-Xms8m -Xmx128m,所以我們的處理耗內(nèi)存比較大時需要手動調(diào)整一下,以便不會內(nèi)存溢出。具體的設置方法為:
選中被運行的類,點擊菜單‘Run->RunConfigurations...’,選擇(x)=Argument標簽頁下的vm arguments框里輸入-Xmx512m, 保存運行就ok了.
我經(jīng)常處理大的浮點矩陣,所以我用的是 -Xmx1024m。
- 2 回答
- 0 關注
- 600 瀏覽
添加回答
舉報