ExpertiDict

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

inline cache

/ɪnˈlaɪn kæʃ/substantivo

Otimização do motor que memoriza, em cada ponto do código, o formato dos objetos vistos para acessar propriedades sem nova busca. Funciona bem quando o formato quase não varia.

Onde usar

Explica por que funções chamadas com objetos de muitos formatos ficam mais lentas, o estado chamado megamórfico. Em code review de código quente, prefere-se passar objetos de formato estável.

Em código

function getX(o) {
  return o.x; // ponto de acesso
}
getX({ x: 1 });
getX({ x: 2 }); // mesmo formato, cache ok
getX({ x: 3, y: 1 }); // novo formato
getX({ z: 1, x: 3 }); // outro formato

Exemplos

The function is hot, so the inline cache matters here.

A função é quente, então o inline cache importa aqui.

Objects with many shapes make the inline cache megamorphic.

Objetos com muitos formatos deixam o inline cache megamórfico.

Cuidado

Alimentar uma função quente com objetos de formatos variados e esperar o mesmo desempenho.

Sinônimos

IC

Veja também

Todos os termos de JavaScript