2015-01-25 6 views
2

Для проектов Xamarin.Android и Xamarin.IOS есть флажок в разделе «Компилятор» под названием «Включить оптимизацию». Смысл достаточно ясен, но точно, какие именно оптимизации? Например, для IOS уже существует отдельная опция для включения оптимизирующего компилятора LLVM.Что делает «включить оптимизацию»?

ответ

5

C# компилятор (или Моно mcs на Mac или Microsoft, csc на Windows) могут испускать несколько лучше IL, если выбран этот параметр.

YMMV, но, в общем, это означает дополнительное время для компиляции исходного кода, и IL может быть труднее прочитать (если вы декомпилируете его) и когда-нибудь отлаживаете. В большинстве случаев сгенерированный код будет идентичным.

Из-за этот параметр по умолчанию, как правило, использовать Enable оптимизации только для выпуска строит (а не для отладки строит).

OTOH это не имеет ничего общего с оптимизацией JIT (или AOT или LLVM), которая будет выполнена позже во время выполнения (для Xamarin.Android) или в собственной компиляции (для Xamarin.iOS).

Смежные вопросы