Capítulo 4. Entendendo a coleta de lixo
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
Neste capítulo, apresentaremos os subsistemas de coleta de lixo da JVM. Para isso, começaremos com uma visão geral da teoria básica de marcação e varredura (também conhecida como coleta de lixo de rastreamento). Em seguida, veremos os recursos de baixo nível do tempo de execução do HotSpot e como ele representa os objetos Java em tempo de execução.
Na segunda metade do capítulo, falaremos sobre os conceitos-chave de alocação e tempo de vida antes de discutir duas técnicas-chave que o HotSpot usa para ajudar na alocação. Em seguida, reuniremos todos os tópicos que conhecemos e apresentaremos o mais simples dos coletores de produção do HotSpot, os coletores paralelos, e explicaremos alguns dos detalhes que os tornam úteis para muitas cargas de trabalho de produção.
Nota
A coleção de lixo é um tema muito vasto, pelo que neste capítulo apenas abordamos algum material introdutório. No Capítulo 5, abordaremos uma seleção de tópicos mais avançados.
Comecemos por notar que o ambiente Java tem várias caraterísticas icónicas ou definidoras, e a recolha de lixo é uma das mais imediatamente reconhecíveis.
A essência da recolha de lixo de Java é que, em vez de exigir que o programador compreenda o tempo de vida exato de cada objeto no sistema, o tempo de execução deve controlar os objectos em nome do programador e eliminar automaticamente ...