Concorrência – Item 71

metro-dfUse a inicialização preguiçosa criteriosamente

Inicialização preguiçosa é uma otimização que pode ser uma faca de dois gumes. Ela diminui o custo de inicialização, mas aumenta o custo de acesso. Dependendo da parcela de campos, do custo de inicialização e da frequência de acesso, ela pode (como qualquer outra prática de otimização) acabar prejudicando o desempenho. A única forma de realmente saber é avaliando o desempenho com e sem a inicialização preguiçosa. Portanto, prefira inicializar os campos normalmente e não preguiçosamente. Se tiver que optar pela inicialização preguiçosa para atingir seus objetos de desempenho ou para romper a circularidade de inicialização prejudicial, use a adequada técnica de acordo como o seu caso:

  • Para campos de instâncias use o idioma de “verificação repetida”.
  • Para campos estáticos use o idioma de “classe possuidora”.
  • Para campos de instâncias que tolerem inicialização repetida, use o idioma de “verificação única”.

Para todas as informações, veja o post inicial.

“Se você disser com a sua boca: ‘Jesus é Senhor’ e no seu coração crer que Deus ressuscitou Jesus, você será salvo. Porque nós cremos com o coração e somos aceitos por Deus; falamos com a boca e assim somos salvos. Romanos 10:9-10