Domanda

Ho un programma che richiede fondamentalmente un sacco di memoria. Tuttavia, per qualche motivo java mi dà un errore quando provo a impostare lo spazio di heap massimo sopra 1,5 GB. Cioè, in esecuzione

java -Xmx1582m [my program]

va bene, ma

java -Xmx1583m [my program]

dà l'errore

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

ho ottenuto lo stesso errore sia in linea di comando di Windows ed Eclipse.

Ecco le mie configurazioni di sistema:

Windows 7 (64-bit)

Intel Core 2 Quad CPU

RAM installata: 8.00 GB

Java versione 1.6.0

E 'strano che io posso solo impostare la memoria 1,5 GB, anche se sto correndo 64-bit OS con 8 GB di RAM. C'è un modo per ovviare a questo?

È stato utile?

Soluzione

Il caso probabile è che, mentre il tuo sistema operativo è a 64 bit, il vostro JVM non è. Apertura di una linea di comando e digitando java -version vi darà le informazioni sulla versione verbose, che dovrebbe indicare se il vostro installato JVM è una build a 32 o 64 bit.

A a 64 bit JVM dovrebbe avere alcun problema con i limiti di memoria superiore.

Altri suggerimenti

Per lo spazio di heap viene utilizzato

-XX:MaxPermSize=64m
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top