CLR在JIT编译期间是否有影响优化的属性?

13

正如问题所说,我想知道有没有任何影响CLR编译/优化字节码的属性。是否存在一个属性会影响代码中的内联决策?展开循环?

生成匿名类型/委托的类上是否有未记录的属性?

可能有一些为了调试目的而禁用优化的属性,但我对这些并不太感兴趣。


“在为匿名类型/委托生成的类上是否存在未记录的属性?” - 编译一些匿名类型和委托,并在反编译器中进行检查。有很多有趣的属性,但我不记得看到任何未记录的内容。 - Tim Robinson
1个回答

4

我在调试时只用过这个:

[MethodImpl(MethodImplOptions.NoInlining)]

这将防止JIT内联一个方法。还有一个:

[MethodImpl(MethodImplOptions.NoOptimization)]

这只是防止JIT在代码生成中发现罕见的Bug,从而导致问题。


这并不是我所期望的答案...但还是谢谢你的回答! - user180326

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接