DebuggableAttribute.DebuggingModes 列挙体
この列挙体には、メンバ値のビットごとの組み合わせを可能にする FlagsAttribute 属性が含まれています。
名前空間: System.Diagnosticsアセンブリ: mscorlib (mscorlib.dll 内)

<ComVisibleAttribute(True)> _ <FlagsAttribute> _ Public Enumeration DebuggingModes

メンバ名 | 説明 | |
---|---|---|
![]() | Default | 最適化の有効化、エディット コンティニュのサポートの無効化、シンボル ストア シーケンス ポイントの使用 (存在する場合) など、既定の動作を使用するよう Just-In-Time (JIT) コンパイラに指示します。.NET Framework Version 2.0 では、JIT 追跡情報 (メソッド内のネイティブ コード オフセットに対する MSIL (Microsoft Intermediate Language) オフセットの情報) が常に生成されます。 |
![]() | DisableOptimizations | コンパイラで実行する最適化を無効にします。最適化は、出力ファイルのサイズを小さくして、速度と効率を向上させるために実行します。最適化によって出力ファイルのコードの配置が変更されると、デバッグが困難になる可能性があります。通常、デバッグ中は最適化を無効にします。 |
![]() | EnableEditAndContinue | エディット コンティニュを有効にします。エディット コンティニュを使用すると、プログラムの中断モード時にソース コードに変更を加えることができます。エディット コンティニュ機能はコンパイラに依存します。 |
![]() | IgnoreSymbolStoreSequencePoints | プログラム データベース (PDB) シーケンス ポイントではなく、暗黙の MSIL シーケンス ポイントを使用します。通常、シンボリック情報には、ソース行ごとに少なくとも 1 つの MSIL オフセットが含まれています。Just-In-Time (JIT) コンパイラは、メソッドをコンパイルするとき、保存する必要がある MSIL オフセットのリストをプロファイリング サービスに要求します。この MSIL オフセットを シーケンス ポイントと呼びます。 |
![]() | None | .NET Framework Version 2.0 では、JIT 追跡情報が常に生成されます。このフラグは、IsJITTrackingEnabled プロパティが false である場合を除き (これは Version 2.0 では効果はありません)、Default と同じ効果があります。 |

DebuggableAttribute.DebuggingModes 列挙体は、ランタイムがコード生成中にデバッガにとって重要な情報をどのように追跡するかを制御します。この情報は、デバッガが豊富なデバッグ機能を提供するのをサポートします。.NET Framework Version 2.0 で、modes パラメータの値に Default を設定して DebuggableAttribute(DebuggingModes) コンストラクタを呼び出すことは、.NET Framework Version 1.1 で isJITTrackingEnabled パラメータの値に true を設定して DebuggableAttribute(Boolean,Boolean) コンストラクタを呼び出すことに相当します。Version 1.1 とは異なり、Version 2.0 では Just-In-Time (JIT) コンパイラによる追跡を無効にすることはできません。JIT 追跡は、デバッグ可能なファイルでは常に有効になります。
シーケンス ポイントは、ブレークポイントを設定する場合など、デバッガ ユーザーが一意に参照できることを求める MSIL (Microsoft Intermediate Language) コード内の位置を示すために使用されます。JIT コンパイラは、2 つの異なるシーケンス ポイントの MSIL を単一のネイティブ命令にコンパイルしないことを保証します。既定では、JIT コンパイラは、プログラム データベース (PDB: Program Database) ファイル内のシンボル ストアで、追加されたシーケンス ポイントのリストをチェックします。ただし、PDB ファイルを読み込む場合、ファイルが使用可能であることが必要であり、パフォーマンスに悪影響を及ぼします。Version 2.0 では、コンパイラは MSIL の "nop" 命令を使用することにより、MSIL コード ストリーム内の "暗黙のシーケンス ポイント" を生成できます。この場合、コンパイラは IgnoreSymbolStoreSequencePoints フラグを設定し、PDB ファイルを読み込まないよう共通言語ランタイムに通知する必要があります。
![]() |
---|
この列挙体は、主に言語開発者によって使用されます。通常は、アプリケーション開発では使用されません。開発環境では、/debug や /optimize のようなコンパイラ パラメータに基づいて DebuggableAttribute.DebuggingModes を使用します。 |

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からDebuggableAttribute.DebuggingModes 列挙体を検索する場合は、下記のリンクをクリックしてください。

- DebuggableAttribute.DebuggingModes 列挙体のページへのリンク