¿Por qué debería usar Java, dado que consume mucha RAM?

Esto es normal, no te preocupes. JVM adquiere memoria cuando necesita ejecutar alguna lógica compleja. Cuando java termine de procesar las tareas, la JVM seguirá manteniendo esa memoria como un espacio reservado y no se devolverá al sistema operativo. Esta arquitectura ayuda en el rendimiento porque JMV no tiene que volver a solicitar la misma memoria del sistema operativo subyacente. Seguirá estando dentro del rango que defina en el parámetro -Xmx JVM.

Desafortunadamente, esta es una de las áreas grises de JVM; realmente no tienes mucho control sobre cómo OS y JVM comparten memoria entre sí. Piense en JVM como un SO virtual que requiere algo de memoria para ejecutarse. Tanto su sistema operativo principal como la VM tienen hambre de recursos y desean conservar la mayor cantidad de memoria posible de los recursos adquiridos. Solicitar más memoria del sistema operativo es una operación que requiere mucho tiempo, por lo que la mayoría de las JVM no liberan la memoria al sistema operativo incluso cuando ya no la necesitan.

Consulte este documento técnico de Oracle para obtener más detalles sobre la administración de memoria interna de JVM. http://www.oracle.com/technetwor…

Heyy ..! Java tiene alguna característica de recolección de basura y administración de memoria. Incluso si su programa consume una gran cantidad de ram, la recolección de basura se inicia y libera el ram no utilizado, lo que hace que el programa se ejecute más rápido.

Hermano hay algo llamado como gestión de memoria … Y recolección de basura … Tiene una función especial que destruye toda la memoria no utilizada y, después del constructor, el destructor se ejecuta automáticamente y las características de tener un código de bytes similar pueden ayudarlo a obtener una independencia de la plataforma, es decir, el código escrito en el código de bytes de la ventana puede ejecutarse en Solaris o en cualquier otra plataforma

Java tiene algunos problemas, pero créanme que la memoria no es uno de ellos.

Un código Java escalable bien escrito no tendrá ese problema e incluso si lo hace, solo le permitirá optimizar el código aún más. El modelo de memoria de Java, gc, es una de las características más interesantes que Java puede hacer alarde y, si aún es escéptico, intente codificar en C ++ (esos destructores son desagradables).