Теория: Можно ли использовать JIT-компилятор, чтобы сначала проанализировать всю программу, а затем выполнить позже? - PullRequest
2 голосов
/ 22 декабря 2010

Обычно JIT Compiler работает с чтением байтового кода, переводом его в машинный код и его выполнением. Это то, что я понимаю, но теоретически, возможно ли, чтобы JIT Compiler сначала анализировал всю программу, а затем выполнял ее как машинный код? Я не знаю, как JIT Compiler работает технически и точно, поэтому я не знаю никакой возможности в этом случае. Но теоретически это возможно? Или я делаю это неправильно?

Ответы [ 3 ]

4 голосов
/ 22 декабря 2010

Как сказал Mehrdad, это больше не JIT-компилятор, но да, вы можете скомпилировать заранее. В .NET есть инструмент под названием ngen.exe , который делает именно это.

1 голос
/ 22 декабря 2010

Нет, это невозможно, по той простой причине, что «JIT» означает «Just-In-Time», и если вы не сделаете это «Just-In-Time», то это не «Just-In-Time».-Time "компилятор.

Это все равно, что спросить, можно ли купить красную машину, но в синем.который обычно называется компилятором.

1 голос
/ 22 декабря 2010

Да, это возможно, но обычно это больше не называется JIT-компиляцией.Это по сути опережающая (AOT) компиляция.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...