【发布时间】:2013-02-02 08:00:52
【问题描述】:
我知道这是一个常见的问题/问题。我想知道从哪里开始。
在 windows server 2008 上运行 java,我们有 65GB 内存,它显示 25GB 可用。 (目前有几个人正在运行进程)。
systeminfo | grep -i memory
显示:
总物理内存:65、536 MB 可用物理内存:26,512MB 虚拟内存:最大大小 69,630 MB 虚拟内存:可用 299 MB 虚拟内存:使用中:69、331 MB。真的只是想知道我如何解决这个问题。
- 我从哪里开始?
- 更多的虚拟内存是什么意思 比物理内存使用,这就是java无法启动的原因吗?
- 可以 java想使用虚拟内存而不是物理内存?
java -version
给我:
Error occured during initialization of VM
could not reserve enough space for object heap
更具体的问题:
- 为什么 JVM 不想使用空闲的物理内存?
- 如果不指定 Xms 参数,java 命令(如
java -version)要使用多少内存? - 简单地分配更多的虚拟内存是解决问题的好方法吗?
【问题讨论】:
-
您使用的是 64 位 VM 还是 32 位 VM?
-
java -version用于位。另外,您的初始堆当前设置为多少? -
我不能做
java -version它给了我空间错误。 (当我调用java -version时实际发生了什么?它是在创建一个JVM,然后从那个JVM 中找出它的版本吗?)。不确定初始堆是什么意思,我该如何找到? -
使用
java -Xms64m -Xmx64m -version我得到java version "1.7.0_07" SE Runtime envrionment <build 1.7.0_07-b10> Java HotSpot 64-bit server VM (build 23.3-b01, mixed mode)
标签: java memory windows-server-2008 virtual-memory