DebuggableAttribute.DebuggingModes 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.
Tam zamanında (JIT) derleyici için hata ayıklama modunu belirtir.
Bu sabit listesi, üyeleri için bit düzeyinde karşılaştırmayı destekler.
public: enum class DebuggableAttribute::DebuggingModes
[System.Flags]
public enum DebuggableAttribute.DebuggingModes
[System.Flags]
[System.Runtime.InteropServices.ComVisible(true)]
public enum DebuggableAttribute.DebuggingModes
[<System.Flags>]
type DebuggableAttribute.DebuggingModes =
[<System.Flags>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type DebuggableAttribute.DebuggingModes =
Public Enum DebuggableAttribute.DebuggingModes
- Devralma
- Öznitelikler
Alanlar
Default | 1 | Tam zamanında (JIT) derleyicisine, iyileştirmeleri etkinleştirme, Düzenle ve Devam Et desteğini devre dışı bırakma ve varsa simge deposu sıra noktalarını kullanma gibi varsayılan davranışını kullanmasını ister. .NET Framework sürüm 2.0'dan başlayarak, JIT izleme bilgileri, bir yöntem içindeki yerel kod uzaklığı için Microsoft ara dil (MSIL) uzaklığı her zaman oluşturulur. |
DisableOptimizations | 256 | Çıkış dosyanızı daha küçük, daha hızlı ve daha verimli hale getirmek için derleyici tarafından gerçekleştirilen iyileştirmeleri devre dışı bırakın. İyileştirmeler çıkış dosyasında kod yeniden düzenlemesine neden olarak hata ayıklamayı zorlaştırabilir. Hata ayıklama sırasında genellikle iyileştirme devre dışı bırakılmalıdır. 2.0 veya sonraki sürümlerde bu değeri Varsayılan (Varsayılan | ) ile birleştirin JIT izlemeyi etkinleştirmek ve iyileştirmeleri devre dışı bırakmak için DisableOptimizations). |
EnableEditAndContinue | 4 | Düzenlemeyi etkinleştirin ve devam edin. Düzenle ve devam et, programınız kesme modundayken kaynak kodunuzda değişiklik yapmanızı sağlar. Düzenleme ve devam etme özelliği derleyiciye bağlıdır. |
IgnoreSymbolStoreSequencePoints | 2 | Program veritabanı (PDB) sıra noktalarını değil örtük MSIL sıra noktalarını kullanın. Sembolik bilgiler normalde her kaynak satır için en az bir Microsoft ara dil (MSIL) uzaklığı içerir. Tam zamanında (JIT) derleyicisi bir yöntemi derlemek üzere olduğunda, profil oluşturma hizmetlerinden korunması gereken MSIL uzaklıklarının listesini ister. Bu MSIL uzaklıkları sıra noktaları olarak adlandırılır. |
None | 0 | .NET Framework sürüm 2.0'dan başlayarak JIT izleme bilgileri her zaman oluşturulur ve bu bayrak, özelliğini bayrağının DisableOptimizations aksine bayrağının None JIT iyileştirmelerini devre dışı bırakmak için kullanılamadığını unutmayın. |
Açıklamalar
Numaralandırma, DebuggableAttribute.DebuggingModes kod oluşturma sırasında hata ayıklayıcı için önemli bilgileri izlemek için çalışma zamanının nasıl olduğunu belirtir. Bu bilgiler, hata ayıklayıcının zengin bir hata ayıklama deneyimi sağlamasına yardımcı olur. .NET Framework sürüm 1.1'in aksine, sürüm 2.0 veya üzeri, tam zamanında (JIT) derleyicisi tarafından izlemeyi kapatmanıza izin vermez. JIT izleme, hata ayıklanabilir dosyalar için her zaman etkindir. Sürüm 2.0 ve sonraki sürümlerde, numaralandırma değerleri aşağıdaki etkiye sahiptir.
Hata ayıklama modu | Sonuç |
---|---|
Hiçbiri | İzleme açık, JIT iyileştirmeleri etkinleştirildi |
Default | İzleme açık, JIT iyileştirmeleri etkinleştirildi |
DisableOptimizations | İzleme açık, JIT iyileştirmeleri etkinleştirildi |
Varsayılan | DisableOptimizations | İzleme, JIT iyileştirmeleri devre dışı |
Sıra noktaları, microsoft ara dil (MSIL) kodunda hata ayıklayıcı kullanıcısının benzersiz olarak başvurabilmesini beklediği konumları (kesme noktası ayarlama gibi) göstermek için kullanılır. JIT derleyicisi, MSIL'i iki farklı dizi noktasında tek bir yerel yönergede derlememesini sağlar. Varsayılan olarak, JIT derleyicisi program veritabanı (PDB) dosyasındaki simge depoyu ek sıra noktalarının listesi için inceler. Ancak, PDB dosyasının yüklenmesi için dosyanın kullanılabilir olması ve performansın olumsuz etkilenmesi gerekir. Sürüm 2.0'dan başlayarak, derleyiciler MSIL " yönergelerini kullanarak MSIL kod akışında "örtük sıra noktaları"nop"
yayar. Bu tür derleyiciler bayrağını IgnoreSymbolStoreSequencePoints
, ortak dil çalışma zamanını PDB dosyasını yüklememesi konusunda bilgilendirecek şekilde ayarlamalıdır.
Not
Bu numaralandırma öncelikle dil geliştiricileri tarafından kullanılır. Genellikle uygulama geliştirmede kullanılmaz. Geliştirme ortamları ,debug ve /optimize gibi derleyici parametrelerine göre kullanılırDebuggableAttribute.DebuggingModes.