Java世界

          學(xué)習(xí)筆記

          常用鏈接

          統(tǒng)計

          積分與排名

          天籟村

          新華網(wǎng)

          雅虎

          最新評論

          java.lang.OutOfMemoryError: Java heap space 解決方法

          java.lang.OutOfMemoryError: Java heap space 解決方法 

          這個問題的根源是jvm虛擬機的默認Heap大小是64M,可以通過設(shè)置其最大和最小值來實現(xiàn).設(shè)置的方法主要是幾個.

          1.可以在windows 更改系統(tǒng)環(huán)境變量
          加上JAVA_OPTS=-Xms64m -Xmx512m

          2,如果用的tomcat,在windows下,可以在

          C:\tomcat5.5.9\bin\catalina.bat  中加上:

          set JAVA_OPTS=-Xms64m -Xmx256m

          位置在: rem Guess CATALINA_HOME if not defined  這行的下面加合適.

          3.如果是linux系統(tǒng)
          Linux  在{tomcat_home}/bin/catalina.sh的前面,加 
          set JAVA_OPTS='-Xms64 -Xmx512'


          java.lang.OutOfMemoryError: Java heap space 
          使用Java程序從數(shù)據(jù)庫中查詢大量的數(shù)據(jù)時出現(xiàn)異常:
          java.lang.OutOfMemoryError: Java heap space 
          在JVM中如果98%的時間是用于GC且可用的 Heap size 不足2%的時候?qū)伋龃水惓P畔ⅰ?/p>

          JVM堆的設(shè)置是指java程序運行過程中JVM可以調(diào)配使用的內(nèi)存空間的設(shè)置.JVM在啟動的時候會自動設(shè)置Heap size的值,其初始空間(即-Xms)是物理內(nèi)存的1/64,最大空間(-Xmx)是物理內(nèi)存的1/4。可以利用JVM提供的-Xmn -Xms -Xmx等選項可進行設(shè)置。
          例如:java -jar -Xmn16m -Xms64m -Xmx128m MyApp.jar
          如果Heap Size設(shè)置偏小,除了這些異常信息外,還會發(fā)現(xiàn)程序的響應(yīng)速度變慢了。GC占用了更多的時間,而應(yīng)用分配到的執(zhí)行時間較少。
          Heap Size 最大不要超過可用物理內(nèi)存的80%,一般的要將-Xms和-Xmx選項設(shè)置為相同,而-Xmn為1/4的-Xmx值。
          Heap size的 -Xms -Xmn 設(shè)置不要超出物理內(nèi)存的大小。否則會提示“Error occurred during initialization of VM Could not reserve enough space for object heap”。

          posted on 2012-07-06 11:16 Rabbit 閱讀(363) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 乐至县| 铜山县| 嘉祥县| 扶风县| 蓬溪县| 克东县| 梁山县| 永登县| 临猗县| 南平市| 潍坊市| 南丹县| 汨罗市| 新密市| 临邑县| 平度市| 巴彦淖尔市| 昭通市| 莱芜市| 兰西县| 怀柔区| 六枝特区| 方城县| 准格尔旗| 比如县| 宁德市| 左云县| 新龙县| 邯郸县| 开封县| 华池县| 乾安县| 威远县| 额济纳旗| 福泉市| 五家渠市| 桐庐县| 吉首市| 凭祥市| 天门市| 合川市|