次の方法で共有


デバッグ、トレース、およびプロファイリング

この記事は .NET Framework に固有のものです。 .NET 6 以降のバージョンを含む、.NET の新しい実装には適用されません。

.NET Framework アプリケーションをデバッグするには、デバッガーがアプリケーションにアタッチできるようにコンパイラとランタイム環境を構成し、可能であれば、アプリケーションとそれに対応する共通中間言語 (CIL) のシンボルとライン マップの両方を生成できるようにする必要があります。 マネージド アプリケーションをデバッグした後は、プロファイリングを行ってパフォーマンスを向上させることができます。 プロファイリングでは、最も頻繁に実行されるコードを生成するソース コードの行と、それらを実行するのにかかる時間が評価され、記述されます。

.NET Framework アプリケーションは、構成の詳細の多くを処理する Visual Studio を使用して簡単にデバッグできます。 Visual Studio がインストールされていない場合は、.NET Framework System.Diagnostics 名前空間のデバッグ クラスを使用して、.NET Framework アプリケーションのパフォーマンスを調べて向上させることができます。 この名前空間には、実行フローをトレースするための TraceDebug、および TraceSource クラス、およびプロファイリング コードの ProcessEventLog、および PerformanceCounter クラスが含まれます。

このセクションでは...

JIT-Attach デバッグの有効化
デバッグ エンジンを .NET Framework アプリケーションに JIT アタッチするようにレジストリを構成する方法を示します。

イメージをデバッグしやすくする
JIT 追跡を有効にして最適化をオフにして、アセンブリをデバッグしやすくする方法を示します。

アプリケーションのトレースとインストルメント化
実行中にアプリケーションの実行を監視する方法と、アプリケーションをインストルメント化してパフォーマンスの程度や問題が発生したかどうかを表示する方法について説明します。

マネージド デバッグ アシスタントを使用したエラーの診断
マネージド デバッグ アシスタント (MDA) について説明します。これは、ランタイムの状態に関する情報を提供するために共通言語ランタイム (CLR) と組み合わせて動作するデバッグ支援機能です。

デバッグの強化:デバッガー表示属性 を使用する
型の開発者が、デバッガーに表示される型の外観を指定する方法について説明します。

ランタイム プロファイリング
アプリケーションのパフォーマンスに関する情報を収集する方法について説明します。

パフォーマンス カウンター
アプリケーションのパフォーマンスを追跡するために使用できるカウンターについて説明します。

Visual Studio で ASP.NET または ASP.NET Core アプリをデバッグ する開発中またはデプロイ後に ASP.NET アプリケーションをデバッグする方法の前提条件と手順について説明します。

開発ガイド アプリケーションの作成、構成、デバッグ、セキュリティ保護、デプロイ、動的プログラミング、相互運用性、拡張性、メモリ管理、スレッドに関する情報など、アプリケーション開発のすべての主要なテクノロジ領域とタスクに関するガイドを提供します。