1. 程式人生 > >java記憶體系列:測試JDK最大記憶體

java記憶體系列:測試JDK最大記憶體

JDK各個版本在不同作業系統中支援的最大記憶體是不一樣的,但是可以通過以下方法來進行測試。

c:>java -XmxXXXm(g) -version

其中,XXX為最大記憶體數值, m(g)是記憶體的計量單位,如果命令能夠正確顯示出jdk的版本等資訊,說明當前jdk支援測試的最大記憶體

數量,否則說明測試的記憶體超出了jdk支援的最大值。

例如:我的系統是win7 64位
Java程式碼 複製程式碼 收藏程式碼
  1. C:\Users\ThinkPad>java -Xmx16g -version   
  2. java version "1.6.0_30"  
  3. Java(TM) SE Runtime Environment (build 1.6.0_30-b12)   
  4. Java HotSpot(TM) 64
    -Bit Server VM (build 20.5-b03, mixed mode)  
Java程式碼 複製程式碼 收藏程式碼
  1. C:\Users\ThinkPad>java -Xmx16g -version  
  2. java version "1.6.0_30"  
  3. Java(TM) SE Runtime Environment (build 1.6.0_30-b12)  
  4. Java HotSpot(TM) 64-Bit Server VM (build 20.5-b03, mixed mode)  
C:\Users\ThinkPad>java -Xmx16g -version
java version "1.6.0_30"
Java(TM) SE Runtime Environment (build 1.6.0_30-b12)
Java HotSpot(TM) 64-Bit Server VM (build 20.5-b03, mixed mode)


支援不了的時候就會報錯了
Java程式碼 複製程式碼 收藏程式碼
  1. C:\Users\ThinkPad>java -Xmx16000g -version   
  2. Error occurred during initialization of VM   
  3. Could not reserve enough space for object heap   
  4. Could not create the Java virtual machine.  
Java程式碼 複製程式碼 收藏程式碼
  1. C:\Users\ThinkPad>java -Xmx16000g -version  
  2. Error occurred during initialization of VM  
  3. Could not reserve enough space for object heap  
  4. Could not create the Java virtual machine.  
C:\Users\ThinkPad>java -Xmx16000g -version
Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.


一般在32位機器上,該最大值位於1.5G-2G之間,在64位機器上面應該沒啥限制,經測試寫16G也能正常得出版本資訊

轉載自:黑色頭髮:http://heisetoufa.iteye.com/