Pular para o conteúdo principal

23 postagens marcadas com "internos"

Ver todas os Marcadores

Extras do V8

· Leitura de 6 minutos
Domenic Denicola ([@domenic](https://twitter.com/domenic)), Feiticeiro de Streams

O V8 implementa um grande subconjunto dos objetos e funções incorporados da linguagem JavaScript no próprio JavaScript. Por exemplo, você pode ver nossa implementação de promessas escrita em JavaScript. Tais recursos incorporados são chamados de autogerenciados. Essas implementações são incluídas em nosso instantâneo de inicialização para que novos contextos possam ser criados rapidamente, sem a necessidade de configurar e inicializar os elementos autogerenciados durante a execução.

Snapshots personalizados de inicialização

· Leitura de 3 minutos
Yang Guo ([@hashseed](https://twitter.com/hashseed)), Engenheiro de Software e fornecedor de pré-aquecedor de motor

A especificação do JavaScript inclui muitas funcionalidades integradas, desde funções matemáticas até um motor de expressões regulares completo. Todo contexto recém-criado do V8 tem essas funções disponíveis desde o início. Para que isso funcione, o objeto global (por exemplo, o objeto window em um navegador) e todas as funcionalidades integradas devem ser configurados e inicializados no heap do V8 no momento em que o contexto é criado. Isso leva um tempo considerável para ser feito do zero.

Cache de código

· Leitura de 2 minutos
Yang Guo ([@hashseed](https://twitter.com/hashseed)), Engenheiro de Software

O V8 utiliza compilação em tempo de execução (JIT) para executar código JavaScript. Isso significa que, imediatamente antes de executar um script, ele precisa ser analisado e compilado — o que pode causar uma sobrecarga considerável. Como anunciamos recentemente, o cache de código é uma técnica que reduz essa sobrecarga. Quando um script é compilado pela primeira vez, os dados de cache são gerados e armazenados. Na próxima vez que o V8 precisar compilar o mesmo script, mesmo em uma instância diferente do V8, ele pode usar os dados do cache para recriar o resultado da compilação, em vez de compilar do zero. Como resultado, o script é executado muito mais rapidamente.