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
| Name | Değer | Description |
|---|---|---|
| None | 0 | .NET Framework sürüm 2.0'dan başlayarak JIT izleme bilgileri her zaman oluşturulur ve bu bayrak, IsJITTrackingEnabled özelliğini Bayrağın DisableOptimizations aksine bayrağın None JIT iyileştirmelerini devre dışı bırakmak için kullanılamadığını unutmayın. |
| 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 dizi 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ığıyla Microsoft ara dil (MSIL) uzaklığı her zaman oluşturulur. |
| IgnoreSymbolStoreSequencePoints | 2 | Program veritabanı (PDB) sıra noktalarını değil örtük MSIL dizi 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 üzereyken, 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. |
| 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. |
| DisableOptimizations | 256 | Çıktı 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 DisableOptimizations) JIT izlemeyi etkinleştirmek ve iyileştirmeleri devre dışı bırakmak için. |
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 | Result |
|---|---|
| Hiçbiri | İzleme açık, JIT iyileştirmeleri etkinleştirildi |
| Varsayılan | İzleme açık, JIT iyileştirmeleri etkinleştirildi |
| DisableOptimizations | İzleme açık, JIT iyileştirmeleri etkinleştirildi |
| Varsayılan | DisableOptimizations | İzleme açık, JIT iyileştirmeleri devre dışı |
Sıra noktaları, hata ayıklayıcı kullanıcısının benzersiz olarak başvurabilmesini beklediği Microsoft ara dil (MSIL) kodundaki 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 ek sıra noktalarının listesi için program veritabanı (PDB) dosyasındaki sembol depoyu inceler. Ancak, PDB dosyasının yüklenmesi için dosyanın kullanılabilir olması ve olumsuz bir performans etkisi olması gerekir. Sürüm 2.0'dan başlayarak, derleyiciler MSIL " yönergelerini kullanarak MSIL kod akışında "örtük dizi noktaları"nop" gösterebilir. Bu tür derleyiciler, ortak dil çalışma zamanına PDB dosyasını yüklememesi için bildirim göndermek için bayrağını ayarlamalıdır IgnoreSymbolStoreSequencePoints .
Note
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.