MethodImplOptions Enum

Definitie

Hiermee geeft u constanten op die de details definiëren van hoe een methode wordt geïmplementeerd.

Deze opsomming ondersteunt een bitsgewijze combinatie van de waarden van de leden.

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
Overname
MethodImplOptions
Kenmerken

Velden

Name Waarde Description
Unmanaged 4

De methode wordt geïmplementeerd in niet-beheerde code.

NoInlining 8

De methode kan niet worden inlined. Inlining is een optimalisatie waarmee een methodeaanroep wordt vervangen door de hoofdtekst van de methode.

ForwardRef 16

De methode wordt gedeclareerd, maar de implementatie ervan wordt elders geleverd.

Synchronized 32

De methode kan slechts door één thread tegelijk worden uitgevoerd. Statische methoden vergrendelen het type, terwijl exemplaarmethoden op het exemplaar worden vergrendeld. Slechts één thread kan worden uitgevoerd in een van de exemplaarfuncties en slechts één thread kan worden uitgevoerd in een van de statische functies van een klasse.

NoOptimization 64

De methode is niet geoptimaliseerd door de Just-In-Time-compiler (JIT) of door systeemeigen codegeneratie (zie Ngen.exe) bij het opsporen van fouten in mogelijke problemen met het genereren van code.

PreserveSig 128

De methodehandtekening wordt exact geëxporteerd zoals gedeclareerd.

AggressiveInlining 256

De methode moet indien mogelijk inline zijn.

Onnodig gebruik van dit kenmerk kan de prestaties verminderen. Het kenmerk kan ertoe leiden dat er implementatielimieten worden aangetroffen die leiden tot tragere gegenereerde code. Meet altijd de prestaties om ervoor te zorgen dat het handig is om dit kenmerk toe te passen.

SecurityMitigations 1024

Dit lid is gereserveerd voor toekomstig gebruik. Het is geïntroduceerd in .NET Framework 4.8.

InternalCall 4096

De aanroep is intern, dat wil gezegd: het roept een methode aan die wordt geïmplementeerd in de algemene taalruntime.

Opmerkingen

Deze opsomming wordt gebruikt met het MethodImplAttribute kenmerk.

U kunt meerdere MethodImplOptions waarden opgeven met behulp van de bitsgewijze OR-operator.

Note

Vergrendelen op het exemplaar of op het type, zoals bij de Synchronized vlag, wordt niet aanbevolen voor openbare typen, omdat andere code dan uw eigen vergrendelingen kan aannemen voor openbare typen en exemplaren. Dit kan impasses of andere synchronisatieproblemen veroorzaken.

Van toepassing op