リソース集中メソッドの識別

前提条件

以下のいずれかの文が該当する場合、メソッドは最適化の候補になります。

頻繁に呼び出されるメソッドを見つける手順は、以下のとおりです。

  1. 「プロファイル・モニター」ビューで、モニターまたはエージェントのいずれかを選択します。
  2. 右クリックして、「アプリケーションから開く」>「実行フロー」と選択します。「実行フロー」ビューが開きます。
  3. ズームイン」ボタン 「ズームイン」ボタンのアイコン を クリックして、メソッド呼び出しのシーケンスを拡張します。
  4. 右クリックして、「すべての繰り返しを検出」を選択します。 繰り返されるパターンが存在する場所には、X が示されます。  
  5. これらのエリアをズームインして、繰り返されるパターンと、メソッドの繰り返し回数を調べます。  

実行時間の長いメソッドを見つける手順は、以下のとおりです。

  1. 「実行フロー」ビューで、各メソッドのストライプの長さを調べます。ストライプが長いほど、 実行時間は長くなります。
  2. メソッドの詳細を調べるには、メソッドを選択して「メソッド統計」ビューを開き、 右クリックして、「メソッド呼び出しの表示」を選択します。「メソッド統計」ビューが開きます。
  3. 「メソッド統計」ビューで、メソッドの呼び出し元の実行時間を調べるには、 右クリックしてから「メソッド呼び出しの表示」を選択します。 このビューでは、同一のメソッドが 1 つのラベル付き行として表現されます。
  4. ローカル・ツールバーから、「呼び出し元の表示呼び出し元のボタンのアイコン をクリックして、ビュー内に選択したメソッドの呼び出し元を表示します。 このボタンをクリックするごとに、呼び出しシーケンス内で 1 つ上位のメソッドが表示されます。
  5. メソッドを選択します。選択エリアの垂直方向の長さは、そのメソッドの 基本時間を表します。ビューの右端にある垂直方向の時間目盛りを調べることで、 このメソッドの実行時間を判別できます。 状況表示行では、このメソッドの累積時間を参照できます。

実行時間のビューを拡張する手順は、以下のとおりです。

  1. 「プロファイル・モニター」ビュー内のモニターのポップアップ・メニューから、 「アプリケーションから開く」>「実行フロー」と選択して、「実行フロー」ビューを開きます。
  2. このビューでは、「メソッド呼び出し」ビュー同様に、右側に垂直方向の時間目盛りがあります。  
  3. ズームイン「ズームイン」ボタンのアイコン ボタン を使用して、ビュー内の特定のセクションを拡張し、調べたいメソッドを強調表示します。
  4. メソッド名 (またはその下の空白) をクリックして選択します。強調表示されたエリアの縦の長さは、そのメソッドの基本時間を表します。 基本時間の正確な値は状況表示行に表示されます。
  5. ズームアウト」ボタン 「ズームアウト」ボタンのアイコン を使用して、 メソッドの強調表示されたエリアを表示可能にしたままの状態で (つまり、黄色い長方形のエリアが 表示されたままの状態で)、プログラム全体のより大きな部分を表示することができます。 実行が完全に表示されていない場合であっても、プログラム全体に関連して このメソッドが消費する時間を判別することができます。

関連概念
プロファイル・ツールの概説
「実行フロー」ビューおよびテーブル
「統計」ビュー

関連タスク
アプリケーションのプロファイル
Java プロセスの起動または接続
ガーベッジ・コレクションの学習