2010-03-02 8 views
13

Como dice la pregunta, tengo curiosidad si alguno de ustedes conoce los atributos que afectan la forma en que CLR compilará/optimizará el bytecode. ¿Hay algún atributo que afecte el código al tomar decisiones? Desenrollar los bucles¿Existen atributos que afecten cómo se optimiza el CLR durante una compilación JIT?

¿Existen atributos no documentados en las clases generadas para los tipos/delegados anónimos?

Probablemente haya atributos para deshabilitar las optimizaciones para depuración, pero de alguna manera no estoy tan interesado en eso.

+0

"¿Existen atributos no documentados en las clases generadas para los tipos/delegados anónimos?" - compilar algunos tipos y delegados anónimos y verificar Reflector. Hay muchos atributos interesantes, pero no recuerdo haber visto nada sin documentar. –

Respuesta

4

Sólo que he utilizado en la depuración de algo:

[MethodImpl(MethodImplOptions.NoInlining)] 

Esto impide JIT de inlining un método. También hay una:

[MethodImpl(MethodImplOptions.NoOptimization)] 

Lo cual impide JIT desde la optimización de nada, en caso de que se encuentra un error poco común en la generación de código que en realidad la causa del problema.

+0

No era exactamente la respuesta que esperaba ... ¡pero gracias por la respuesta! –

Cuestiones relacionadas