Как «Многоуровневая компиляция» влияет на приложение .NET Core 3.0 и когда ее следует отключить?C#

Место общения программистов C#
Anonymous
Как «Многоуровневая компиляция» влияет на приложение .NET Core 3.0 и когда ее следует отключить?

Сообщение Anonymous »

Из новых функций Microsoft .NET Core 3.0 упоминаются:

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

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

Подробнее здесь: https://stackoverflow.com/questions/587 ... en-shall-i

Вернуться в «C#»