MethodImplOptions Enumeración

Definición

Especifica constantes que definen los detalles de cómo se implementa un método.

Esta enumeración admite una combinación bit a bit de sus valores de miembro.

public enum class MethodImplOptions
[System.Flags]
public enum MethodImplOptions
[System.Flags]
[System.Serializable]
public enum MethodImplOptions
[System.Flags]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum MethodImplOptions
[<System.Flags>]
type MethodImplOptions = 
[<System.Flags>]
[<System.Serializable>]
type MethodImplOptions = 
[<System.Flags>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type MethodImplOptions = 
Public Enum MethodImplOptions
Herencia
MethodImplOptions
Atributos

Campos

Nombre Valor Description
Unmanaged 4

El método se implementa en código no administrado.

NoInlining 8

El método no se puede insertar. La inserción es una optimización por la que se reemplaza una llamada al método por el cuerpo del método.

ForwardRef 16

El método se declara, pero su implementación se proporciona en otro lugar.

Synchronized 32

El método solo se puede ejecutar mediante un subproceso a la vez. Los métodos estáticos se bloquean en el tipo, mientras que los métodos de instancia se bloquean en la instancia. Solo un subproceso puede ejecutarse en cualquiera de las funciones de instancia y solo un subproceso puede ejecutarse en cualquiera de las funciones estáticas de una clase.

NoOptimization 64

El compilador Just-In-Time (JIT) no optimiza el método ni la generación de código nativo (consulte Ngen.exe) al depurar posibles problemas de generación de código.

PreserveSig 128

La firma del método se exporta exactamente como se declara.

AggressiveInlining 256

El método debe estar insertado si es posible.

El uso innecesario de este atributo puede reducir el rendimiento. El atributo puede provocar que se encuentren límites de implementación que darán lugar a código generado más lento. Mida siempre el rendimiento para asegurarse de que resulta útil aplicar este atributo.

SecurityMitigations 1024

Este miembro está reservado para uso futuro. Se introdujo en .NET Framework 4.8.

InternalCall 4096

La llamada es interna, es decir, llama a un método que se implementa en Common Language Runtime.

Comentarios

Esta enumeración se usa con el MethodImplAttribute atributo .

Puede especificar varios MethodImplOptions valores mediante el operador OR bit a bit.

Note

No se recomienda bloquear en la instancia o en el tipo , como con la Synchronized marca , para los tipos públicos, porque el código distinto del suyo puede tomar bloqueos en los tipos y instancias públicos. Esto puede provocar interbloqueos u otros problemas de sincronización.

Se aplica a