Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

just-in-time compilation

Acho que não entendi, então vc tem um codigo fonte e vc quer executar uma função expecifica, na hora da execução vai ser interpretador o codigo inteiro, mas aquela função especifica vc manda compilar aquela função para executar no computador, emquanto todo o resto do codigo fonte é interpretador? É isso?

2 respostas
solução!

Olá Wesley! É mais ou menos isso que você entendeu mesmo. Vou falar um pouco do caso específico do Java, que tenho mais familiaridade. Sem entrar em muitos detalhes da JVM (Máquina Virtual Java), apenas precisamos saber que ela possui um compilador Just In Time. Quando rodamos um programa na JVM, ela começa a interpretar o código para executá-lo. Enquanto o código é interpretado, o compilador JIT começa a procurar otimizações que podem ser feitas em tempo de execução. Caso uma função seja chamada uma única vez, não vale a pena compilar aquele trecho, porém se uma mesma função começa a ser executada diversas vezes, o JIT compila essa função. Dessa forma, temos o melhor dos dois mundos. Para trechos de código que são raramente executados ou executados uma única vez usamos o interpretador, já que seria gasto mais tempo para compilar do que simplesmente interpretar. Para os trechos que são executados diversas vezes, o JIT compila em tempo de execução, para que as próximas vezes que o código for executado seja diretamente em código de máquina, muito mais rápido. Esse vídeo explica mais detalhadamente o JIT: https://www.youtube.com/watch?v=rrhO_P0IM3s Se ainda não ficou claro algum ponto pode perguntar!

Ahh entendi, ficou claro, obrigado.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software