MethodImplOptions Enum

Definisi

Menentukan konstanta yang menentukan detail bagaimana metode diimplementasikan.

Enumerasi ini mendukung kombinasi bitwise dari nilai yang termasuk di dalamnya.

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
Warisan
MethodImplOptions
Atribut

Bidang

Nama Nilai Deskripsi
Unmanaged 4

Metode ini diimplementasikan dalam kode yang tidak dikelola.

NoInlining 8

Metode tidak dapat di-inlin. Inlining adalah pengoptimalan di mana panggilan metode diganti dengan isi metode.

ForwardRef 16

Metode ini dinyatakan, tetapi implementasinya disediakan di tempat lain.

Synchronized 32

Metode ini hanya dapat dijalankan oleh satu utas pada satu waktu. Metode statis mengunci jenis, sedangkan metode instans mengunci instans. Hanya satu utas yang dapat dijalankan di salah satu fungsi instans, dan hanya satu utas yang dapat dijalankan di salah satu fungsi statis kelas.

NoOptimization 64

Metode ini tidak dioptimalkan oleh kompilator just-in-time (JIT) atau dengan pembuatan kode asli (lihat Ngen.exe) saat men-debug kemungkinan masalah pembuatan kode.

PreserveSig 128

Tanda tangan metode diekspor persis seperti yang dinyatakan.

AggressiveInlining 256

Metode harus di-inlin jika memungkinkan.

Penggunaan atribut ini yang tidak perlu dapat mengurangi performa. Atribut dapat menyebabkan batas implementasi ditemui yang akan mengakibatkan kode yang dihasilkan lebih lambat. Selalu ukur performa untuk memastikan sangat membantu untuk menerapkan atribut ini.

SecurityMitigations 1024

Anggota ini dicadangkan untuk digunakan di masa mendatang. Ini diperkenalkan dalam .NET Framework 4.8.

InternalCall 4096

Panggilan bersifat internal, yaitu memanggil metode yang diimplementasikan dalam runtime bahasa umum.

Keterangan

Enumerasi ini digunakan dengan MethodImplAttribute atribut .

Anda dapat menentukan beberapa MethodImplOptions nilai dengan menggunakan operator BITWISE OR.

Note

Mengunci instans atau pada jenis, seperti halnya Synchronized bendera, tidak disarankan untuk jenis publik, karena kode selain milik Anda dapat mengambil kunci pada jenis dan instans publik. Ini dapat menyebabkan kebuntuan atau masalah sinkronisasi lainnya.

Berlaku untuk