MethodImplOptions Sabit listesi
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir yöntemin nasıl uygulandığının ayrıntılarını tanımlayan sabitleri belirtir.
Bu sabit listesi, üyeleri için bit düzeyinde karşılaştırmayı destekler.
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
- Devralma
- Öznitelikler
Alanlar
| Name | Değer | Description |
|---|---|---|
| Unmanaged | 4 | yöntemi yönetilmeyen kodda uygulanır. |
| NoInlining | 8 | Yöntemin içi çizilemez. Inlining, yöntem çağrısının yöntem gövdesiyle değiştirildiği bir iyileştirmedir. |
| ForwardRef | 16 | yöntemi bildirilir, ancak uygulaması başka bir yerde sağlanır. |
| Synchronized | 32 | Yöntemi aynı anda yalnızca bir iş parçacığı tarafından yürütülebilir. Statik yöntemler türüne kilit, örnek yöntemleri ise örneğe kilitler. Örnek işlevlerinin herhangi birinde yalnızca bir iş parçacığı yürütülebilir ve sınıfın statik işlevlerinin herhangi birinde yalnızca bir iş parçacığı yürütülebilir. |
| NoOptimization | 64 | Yöntem, olası kod oluşturma sorunlarının hatalarını ayıklarken tam zamanında (JIT) derleyicisi veya yerel kod oluşturma (bkz. Ngen.exe) tarafından iyileştirilmemiştir. |
| PreserveSig | 128 | Yöntem imzası tam olarak bildirilen şekilde dışarı aktarılır. |
| AggressiveInlining | 256 | Mümkünse yöntemin inlined olması gerekir. Bu özniteliğin gereksiz kullanımı performansı düşürebilir. özniteliği, daha yavaş oluşturulan koda neden olacak uygulama sınırlarıyla karşılaşılmasına neden olabilir. Bu özniteliğin uygulanmasının yararlı olduğundan emin olmak için her zaman performansı ölçün. |
| SecurityMitigations | 1024 | Bu üye gelecekte kullanılmak üzere ayrılmıştır. .NET Framework 4.8'de kullanıma sunulmuştur. |
| InternalCall | 4096 | Çağrısı iç, yani ortak dil çalışma zamanı içinde uygulanan bir yöntemi çağırır. |
Açıklamalar
Bu numaralandırma özniteliğiyle MethodImplAttribute birlikte kullanılır.
Bit düzeyinde OR işlecini kullanarak birden çok MethodImplOptions değer belirtebilirsiniz.
Note
Örneği veya türü üzerinde bayrağında Synchronized olduğu gibi kilitleme, ortak türler için önerilmez, çünkü sizinkinden başka bir kod genel türlerde ve örneklerde kilit alabilir. Bu, kilitlenmelere veya diğer eşitleme sorunlarına neden olabilir.