Capítulo 7. Melhores Práticas de Memória Heap
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
Os capítulos 5 e 6 discutiram os detalhes de como ajustar o coletor de lixo para que ele tenha o menor efeito possível em um programa. Ajustar o coletor de lixo é importante, mas muitas vezes é possível obter melhores ganhos de desempenho utilizando melhores práticas de programação. Este capítulo discute algumas das abordagens de melhores práticas para usar a memória heap em Java.
Temos dois objetivos conflitantes aqui. A primeira regra geral é criar objetos com moderação e descartá-los o mais rápido possível. Usar menos memória é a melhor maneira de melhorar a eficiência do coletor de lixo. Por outro lado, recriar frequentemente alguns tipos de objectos pode levar a um pior desempenho geral (mesmo que o desempenho do GC melhore). Se esses objetos forem reutilizados, os programas poderão ter ganhos substanciais de desempenho. Os objetos podem ser reutilizados de várias maneiras, incluindo variáveis locais de thread, referências especiais a objetos e pools de objetos. A reutilização de objetos significa que eles terão vida longa e afetarão o coletor de lixo, mas quando forem reutilizados criteriosamente, o desempenho geral melhorará.
Este capítulo discute ambas as abordagens e as soluções de compromisso entre elas. Primeiro, porém, vamos ver as ferramentas para compreender o que está a acontecer dentro do heap.
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access