MethodImplAttributes Sabit listesi

Tanım

Yöntem uygulamasının öznitelikleri için bayrakları belirtir.

Bu sabit listesi, üyeleri için bit düzeyinde karşılaştırmayı destekler.

Bu API, ürün altyapısını destekler ve doğrudan kodunuzdan kullanıma yönelik değildir.

public enum class MethodImplAttributes
public enum MethodImplAttributes
[System.Flags]
[System.Serializable]
public enum MethodImplAttributes
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum MethodImplAttributes
type MethodImplAttributes = 
[<System.Flags>]
[<System.Serializable>]
type MethodImplAttributes = 
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type MethodImplAttributes = 
Public Enum MethodImplAttributes
Devralma
MethodImplAttributes
Öznitelikler

Alanlar

AggressiveInlining 256

Yöntemin mümkün olan her yerde çizgili olması gerektiğini belirtir.

AggressiveOptimization 512

Mümkün olduğunda yöntemin iyileştirilmesi gerektiğini belirtir.

CodeTypeMask 3

Kod türüyle ilgili bayrakları belirtir.

ForwardRef 16

yönteminin tanımlanmadığını belirtir.

IL 0

Yöntem uygulamasının Microsoft ara dilde (MSIL) olduğunu belirtir.

InternalCall 4096

bir iç çağrı belirtir.

Managed 0

yönteminin yönetilen kodda uygulandığını belirtir.

ManagedMask 4

Yöntemin yönetilen veya yönetilmeyen kodda uygulanıp uygulanmadığını belirtir.

MaxMethodImplVal 65535

Bir aralık denetimi değeri belirtir.

Native 1

Yöntem uygulamasının yerel olduğunu belirtir.

NoInlining 8

Yönteminin çizili olamayacağını belirtir.

NoOptimization 64

Olası kod oluşturma sorunlarının hatalarını ayıklarken yönteminin tam zamanında (JIT) derleyicisi veya yerel kod oluşturma (bkz .Ngen.exe) tarafından iyileştirilmediğini belirtir.

OPTIL 2

Yöntem uygulamasının İyileştirilmiş Ara Dilde (OPTIL) olduğunu belirtir.

PreserveSig 128

Yöntem imzasının tam olarak bildirilen şekilde dışarı aktarıldığını belirtir.

Runtime 3

Yöntem uygulamasının çalışma zamanı tarafından sağlandığını belirtir.

SecurityMitigations 1024

Bu üye gelecekte kullanılmak üzere ayrılmıştır. .NET Framework 4.8'de tanıtıldı.

Synchronized 32

yönteminin gövde üzerinden tek iş parçacıklı olduğunu belirtir. Statik yöntemler (Shared Visual Basic'te) türü kilitlerken örnek yöntemleri örnekte kilitleniyor. Bu amaçla C# lock deyimini veya Visual Basic SyncLock deyimini de kullanabilirsiniz.

Unmanaged 4

yönteminin yönetilmeyen kodda uygulandığını belirtir.

Açıklamalar

Öznitelikler bit düzeyinde OR işlemi kullanılarak aşağıdaki gibi birleştirilir:

Kod uygulama maskeleri:

  • CodeTypeMask

  • IL

  • Native

  • OPTIL

  • Runtime

Yönetilen maskeler:

  • ManagedMask

  • Unmanaged

  • Managed

Uygulama bilgileri ve birlikte çalışma maskeleri:

  • ForwardRef

  • PreserveSig

  • InternalCall

  • Synchronized

  • NoInlining

  • NoOptimization

  • MaxMethodImplVal

  • SecurityMitigations(.NET Framework 4.8'den itibaren kullanılabilir.)

Not

Örneği veya türü üzerinde, bayrağında olduğu gibi Synchronized kilitleme, ortak türler için önerilmez, çünkü kendi kod dışındaki kodlar ortak türlerde ve örneklerde kilit alabilir. Bu kilitlenmelere veya diğer eşitleme sorunlarına neden olabilir.

Şunlara uygulanır

Ayrıca bkz.