Как «Многоуровневая компиляция» влияет на приложение .NET Core 3.0 и когда мне его отключать? - PullRequest
0 голосов
/ 10 ноября 2019

Из новых возможностей Microsoft .NET Core 3.0 упоминается:

Многоуровневая компиляция (TC) включена по умолчанию в .NET Core 3.0. Эта функция позволяет среде выполнения более адаптивно использовать компилятор Just-In-Time (JIT) для повышения производительности.

Основным преимуществом TC является включение (повторное) методов джитинга с более низким качеством. но более быстрый или более качественный, но более медленный. Это помогает повысить производительность приложения, поскольку оно проходит через различные стадии выполнения, от запуска до устойчивого состояния. Это отличается от подхода, не основанного на TC, где каждый метод компилируется одним способом (так же, как и на уровне высокого качества), который смещен в устойчивое состояние при запуске.

Документдает два разных способа компиляции. Но там не упоминалось, как выбирать и переключаться между параметрами компиляции.

Так как же TC Compiler будет переключаться между двумя режимами и влиять на наш код? Как это повлияет на наши приложения при переходе с .NET Core 2.2 на .NET Core 3.0? Когда я отключу эту функцию?

...