ExpertiDict

Java · Avançado · Inglês · Técnico

metaspace

/ˈmɛtəspeɪs/substantivo

Região de memória nativa, fora da heap, onde a JVM guarda metadados de classes, como estruturas de métodos e constant pools. Substituiu a PermGen no Java 8.

Onde usar

Aparece em OutOfMemoryError: Metaspace e em redeploys de aplicações que vazam classloaders. Controle: -XX:MaxMetaspaceSize.

Em código

# limita o metaspace a 256 MB
java -XX:MaxMetaspaceSize=256m -jar app.jar
# acompanha o uso
jcmd 4242 VM.metaspace

Exemplos

We hit an OutOfMemoryError in Metaspace after several redeploys.

Tomamos um OutOfMemoryError no Metaspace depois de vários redeploys.

Metaspace lives outside the heap, in native memory.

O Metaspace fica fora da heap, na memória nativa.

Cuidado

Por padrão não tem limite além da memória do sistema; sem teto, um vazamento de classes consome a RAM do host.

Antônimos

PermGen

Origem

Do grego meta, além de, mais o inglês space: espaço para os dados sobre as classes.

Veja também

Todos os termos de Java