今天,在運行一個java命令的時候,突然出現了outOfMemory的問題,,我還以爲是程序出現了什麼問題,然後又試了別的,發現沒問題呀,那個程序是對的,對不同的文件會出現不同的效果,是什麼原因呢,
後來仔細一分析,前面出問題的文件,是那個比較大的文件,也就是說,我的程序對於比較大的文件進行操作的時候,是會出問題的,而比較小的,就不會
問題來了,但應該是怎麼解決呢?
經過一些網上的搜索,以及自己的一些分析:
解決方案如下:
java 後面是你的一些程序 -Xms32m -Xmx512m
這些黃字是什麼意思呢,
首先 ,Xms 代表的是程序啓動時,佔用的初始內存是多少,單位爲byte,也可在後面加上m表示兆
而Xmx表示爲最大內存多少,也就是說,當初始內存滿足不了虛擬機時,就會加大這個內存,但如果超過了Xmx值時,就會出現outOfMemory的問題
所以,在這裏,我們的設置,個人覺得還是比較合理的.