Tengo una clase que se ejecuta infinito (no hacer nada, solo bucle y dormir), llamado NeverReturn. Trato de ejecutarlo usando los siguientes comandos en Windows de 32 bits XP:¿Cuántas JVM podemos tener en una sola máquina?
java -Xms1200M NeverReturn
encuentro con el comando puedo crear sólo el 4 instancia de Java al mismo tiempo. El 5 ° y el próximo comando java no podrán crear jvm.
Si cambio el comando a -Xms600M, puedo crear 8 instancias de Java. El noveno fracasará.
¿Alguien podría explicar eso? Estoy usando la actualización sun jdk1.6 23 y la actualización jdk1.5 22.
la 's' en -Xms obliga a la JVM a asignar ** al menos ** esa cantidad de memoria. Tal vez estabas pensando en '-Xmx', con una 'x', que asignará ** como mucho ** esa cantidad de memoria. Si su máquina tiene 6 GB, entonces lo que está viendo es totalmente normal, ya que usó '-Xms'. – Gugussee
La versión XP de 32 bits solo puede manejar 4 GB, y afaik, en ese caso solo hay alrededor de 3GB disponibles. – tigger
Entiendo la diferencia entre -Xms y -Xmx. Mi pregunta es si el sistema operativo tiene la capacidad de dar a cada proceso alrededor de 2 GB de memoria en el sistema de Windows de 32 bits. Pero por qué todavía hay algunas limitaciones cruzan este proceso de jvm. – xeranic