Se comprime el espacio de clases en Java8 proporcional al montón?

user1074593:

Estoy recibiendo un OutOfMemoryError en "espacio de la clase comprimido". Yo entiendo que el valor por defecto es de 1 GB y que puede ser desactivado y que puede aumentar el espacio. Lo que me gustaría saber es si el uso de la zona de espacio de la clase comprimido cambia con el tamaño de la pila. es decir, si tengo un montón de 512mb Va a usar alrededor del mismo espacio comprimido Clase como decir un montón con 16gb?

Stephen C:

El "espacio de la clase comprimido" es parte de metaespacio. Cambiar el tamaño de esta región de metaespacio no afecta directamente el tamaño del montón. Sin embargo, no consumen memoria virtual, y esto podría limitar la memoria disponible para el almacenamiento dinámico de Java regulares.

Si tengo un montón de 512mb va a utilizar todo el mismo espacio que decir un montón con 16gb?

Probablemente si. Espacio de la clase comprimido contiene la clase de código ... no casos (objetos). En un programa normal, el número de clases utilizado y su tamaño es constante, y no se correlaciona con el número o tamaño de las instancias.

Una excepción a esto es si la aplicación de mayores de usos / malos usos proxies dinámicos. De hecho, eso podría ser la causa de sus OOME de!

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=363300&siteId=1
Recomendado
Clasificación