Почему при первом запуске .net code => он будет работать медленнее второго? - PullRequest
0 голосов
/ 25 февраля 2012

Когда я беру некоторую сборку .net и запускаю ее на машине =>, JIT преобразует код в нативный и запускает его. Если я остановлю приложение и снова запустю его, оно загрузится (снова) в JIT, и JIT преобразует его снова и снова запустит.

Так почему же второй раз запуск приложения будет более оптимистичным и быстрым? Сохраняет ли JIT как-то первый нативный код, а затем нет необходимости снова преобразовывать код из IL в нативный? если его 'да', то где хранится преобразованный код (нативный)?

1 Ответ

2 голосов
/ 25 февраля 2012

Это, наверное, в памяти. Практически во второй раз вы делаете что-либо быстрее, поскольку все, что вы делаете, кэшируется в разных местах системы (вашим диском, ОС, ...).

Когда я говорю «это», я имею в виду полную цепочку файлов и библиотек, необходимых для запуска приложения .NET.

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