Pergunta

Eu tenho um programa que exige fundamentalmente muita memória. No entanto, por algum motivo, o Java me dá um erro quando tento definir o espaço máximo acima de 1,5 GB. Isto é, correndo

java -Xmx1582m [my program]

está bem, mas

java -Xmx1583m [my program]

dá o erro

Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.

Recebi o mesmo erro na linha de comando do Windows e no Eclipse.

Aqui estão as configurações do meu sistema:

Windows 7 (64 bits)

Intel Core 2 Quad CPU

RAM instalada: 8,00 GB

Java versão 1.6.0

É estranho que eu possa definir apenas 1,5 GB de memória, mesmo que esteja executando o sistema operacional de 64 bits com 8 GB de RAM. Existe uma maneira de contornar isso?

Foi útil?

Solução

O caso provável é que enquanto o seu sistema operacional é de 64 bits, sua JVM não é. Abrindo uma linha de comando e digitando java -version fornecerá as informações da versão detalhada, que devem indicar se a sua JVM instalada é uma compilação de 32 ou 64 bits.

Uma JVM de 64 bits não deve ter problemas com os limites mais altos de memória.

Outras dicas

Para o espaço da pilha é usado

-XX:MaxPermSize=64m
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top