Информация об изменениях

Сообщение Re: MethodImpl(MethodImplOptions.AggressiveInlining) от 31.03.2016 16:20

Изменено 31.03.2016 16:24 Sinix

Здравствуйте, rameel, Вы писали:

R>По поводу MethodImpl(MethodImplOptions.AggressiveInlining). К сожалению, MethodImplOptions.AggressiveInlining доступен только начиная .NET 4.5, а у нас проект компилируется еще в 4.0. Соответственно лезут ошибки:

R>
R>Assertions\CodeExceptions.cs(27,33): error CS0117: 'MethodImplOptions' does not contain a definition for 'AggressiveInlining'
R>


Определяйтесь, что важнее — ассерты, работающие с 1.0 от варианта без ассертов, или совместимость с 4.0

* На десктопных процессорах, на ноутбуках 1.1-1.2 будет.

Надо чтоб обои были — надо определять константу AggressiveInlining и дефайном её в 0 определять, если платформа 4.0.
Re: MethodImpl(MethodImplOptions.AggressiveInlining)
Здравствуйте, rameel, Вы писали:

R>По поводу MethodImpl(MethodImplOptions.AggressiveInlining). К сожалению, MethodImplOptions.AggressiveInlining доступен только начиная .NET 4.5, а у нас проект компилируется еще в 4.0. Соответственно лезут ошибки:

R>
R>Assertions\CodeExceptions.cs(27,33): error CS0117: 'MethodImplOptions' does not contain a definition for 'AggressiveInlining'
R>


Определяйтесь, что важнее — ассерты, работающие с 1.0 от варианта без ассертов, или совместимость с 4.0

* На десктопных процессорах, на ноутбуках 1.1-1.2 будет:
                                  Method | Scaled |    S95 |
---------------------------------------- |------- |------- |
               Test00RunWithoutAssertion |   1.00 |      1 |
               Test01RunDefaultAssertion |   1.13 |   1.11 |
                       Test02CodeNotNull |   1.12 |   1.11 |
                Test03CodeAssertArgument |   1.12 |   1.12 |
          Test04CodeAssertArgumentFormat |   8.53 |   9.78 |
 Test05CodeAssertArgumentInterpolateArgs | 161.70 | 164.69 |


Надо чтоб обои были — надо определять константу AggressiveInlining и дефайном её в 0 определять, если платформа 4.0.