Java Heap Tamanho: Erro ao configurá -lo muito grande
-
27-09-2019 - |
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?
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