次の方法で共有


ランタイム プロファイリング

更新 : 2007 年 11 月

プロファイリングは、任意の開発シナリオまたは配置シナリオでパフォーマンス データを収集する方法の 1 つです。このセクションは、アプリケーションのパフォーマンスに関する情報の収集を必要とする開発者およびシステム管理者を対象にしています。

パフォーマンス モニタ (Perfmon.exe) を使用したパフォーマンスの追跡

パフォーマンス モニタ (Windows Vista では "信頼性とパフォーマンス モニタ") は、.NET Framework アプリケーションをプロファイリングする場合に最も使いやすいツールです。パフォーマンス モニタは、共通言語ランタイムおよび Windows Software Development Kit (SDK) と共にインストールされる .NET パフォーマンス カウンタ内のデータをグラフィカルに表示します。.NET パフォーマンス カウンタを使用することにより、メモリ管理からジャスト イン タイム (JIT) コンパイラのパフォーマンスまで、あらゆる情報を監視できます。.NET パフォーマンス カウンタは、アプリケーションが使用するリソースに関する情報を提供します。この情報は、アプリケーションのパフォーマンスを判断するための間接的な指標となります。これらのカウンタは、アプリケーションのパフォーマンスを直接計測するのではなく、アプリケーション内部の動作状況を把握するために使用します。

Perfmon.exe を実行するには

  1. コマンド プロンプトに「perfmon」と入力します。パフォーマンス コンソールが表示されます。

  2. ツール バーで、[追加] アイコン (正符号) をクリックします (表示されている場合)。表示されていない場合は、モニタ ウィンドウを右クリックし、[カウンタの追加] を選択します。[カウンタの追加] ダイアログ ボックスが表示されます。

  3. 表示するパフォーマンス カウンタを選択します。メモリ管理 (.NET CLR Memory)、相互運用性 (.NET CLR Interop)、例外処理 (.NET CLR Exceptions)、マルチスレッド (.NET CLR LocksAndThreads) のためのカウンタなど、.NET アプリケーション用に多数のカウンタが定義されています。

メモ :

NT パフォーマンス コンソールの実行中に新しいパフォーマンス カウンタがインストールされた場合は、新しいカウンタが表示されるように、パフォーマンス コンソールを停止して再起動してください。

特定のゾーンまたはリモート共有に存在するアセンブリをプロファイリングする場合は、リモート アセンブリがパフォーマンス カウンタを実行するコンピュータに対して完全な信頼関係を持っていることを確認してください。アセンブリが十分な信頼関係を持っていない場合、パフォーマンス カウンタは機能しません。さまざまなゾーンに対する信頼関係の設定方法については、「コード アクセス セキュリティ ポリシー ツール (Caspol.exe)」を参照してください。

プログラムによるパフォーマンス カウンタの読み取りおよび作成

.NET Framework には、パフォーマンス コンソールで利用できるものと同じパフォーマンス情報にコードからアクセスするのに使用するクラスが用意されています。また、これらのクラスを使用すると、カスタム パフォーマンス カウンタを作成できます。.NET Framework に用意されているパフォーマンス監視クラスのいくつかについての説明を次の表に示します。

クラス

説明

System.Diagnostics.PerformanceCounter

Windows NT パフォーマンス カウンタ コンポーネントを表します。既存の定義済みカウンタまたはカスタム カウンタを読み取ったり、カスタム カウンタにパフォーマンス データを書き込むには、このクラスを使用します。

System.Diagnostics.PerformanceCounterCategory

コンピュータ上のカウンタおよびカウンタ カテゴリと対話するためのいくつかのメソッドを提供します。

System.Diagnostics.PerformanceCounterInstaller

PerformanceCounter コンポーネントのインストーラを指定します。

System.Diagnostics.PerformanceCounterType

PerformanceCounterNextValue メソッドを計算する数式を指定します。

参照

概念

ASP.NET 用のパフォーマンス カウンタ

セキュリティ ポリシー モデル

その他の技術情報

.NET Framework のパフォーマンス カウンタ