ExpertiDict

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

G1

/ˈʒe ˈũ/substantivo

Coletor de lixo padrão da JVM desde o Java 9. Divide a heap em regiões e prioriza as que têm mais lixo, buscando respeitar uma meta de pausa.

Onde usar

Aparece em -XX:MaxGCPauseMillis e em logs como 'G1 Evacuation Pause'. É o coletor escolhido por padrão em máquinas com recursos suficientes.

Em código

# G1 já é o padrão; só ajusta a meta
java -XX:MaxGCPauseMillis=100 -jar app.jar
# tamanho da região (1 a 32 MB)
java -XX:G1HeapRegionSize=16m -jar app.jar

Exemplos

O G1 já é o padrão, só ajustamos a meta de pausa.

Aumentei a região do G1 por causa dos objetos grandes.

Cuidado

A meta de pausa é um objetivo, não uma garantia; ajustar demais costuma piorar o resultado. Meça antes de mudar.

Sinônimos

Garbage-First

Origem

G1 vem de Garbage-First, lixo primeiro: coleta antes as regiões com mais lixo.

Veja também

Todos os termos de Java