jp.go.aist.dmrc.platform.beans.system.performance
クラス PFProfileAnalyzer

java.lang.Object
  拡張jp.go.aist.dmrc.platform.beans.system.performance.PFProfileAnalyzer
すべての実装インタフェース:
PFComponent, PFDataCreateEventSource, PFEventSource, java.io.Serializable

public class PFProfileAnalyzer
extends java.lang.Object
implements PFComponent, PFDataCreateEventSource

JDK付属のプロファイラによる出力結果を解析するためのコンポーネント。 出力結果のテキストファイルからラベル付きリストを作成する。

プロファイラを用いたアプリケーション実行には、VM起動時に以下のオプションを付ける。

-Xrunhprof:cpu=times,heap=sites

終了後にデフォルトではjava.hprof.txtという名前のテキストファイルが作成され、 このコンポーネントはこのファイルを対象として構造を解析し、ラベル付きリストを作成する。

作成されたラベル付きリストには3つの要素が含まれている。

このコンポーネントから以下のイベントが発生する。

関連項目:
直列化された形式

コンストラクタの概要
PFProfileAnalyzer()
          デフォルトコンストラクタ
 
メソッドの概要
 void addPFDataCreateListener(PFDataCreateListener lis)
          引数で与えられたイベントリスナを登録し、 データ生成イベント発生時に処理を行う対象とする。
 int getComponentID()
          コンポーネントIDを取得する。
 java.lang.String getComponentKey()
          コンポーネントキーを取得する。
 PFMultiLocaleString getComponentKeys()
          全ロケール分のコンポーネントキーを返す。
 java.lang.String getComponentName()
          コンポーネント名称を取得する。
 java.lang.String getComponentString()
          コンポーネントの文字列表現を取得する。
 java.util.Iterator getPFDataCreateListenerList()
          データ生成イベントリスナ配列を取得する。
 void localeUpdated()
          ロケール変更に対応する。
 void read(java.lang.String filename)
          プロファイラの出力結果をロードする。
 void removePFDataCreateListener(PFDataCreateListener lis)
          引数で与えられたイベントリスナを削除し、 データ生成イベント発生時に処理を行う対象から外す。
 void setComponentID(int id)
          コンポーネントIDを設定する。
 void setComponentKey(java.lang.String key)
          コンポーネントのキー情報を設定する
 void setComponentKeys(PFMultiLocaleString keys)
          全ロケール分のコンポーネントキーを設定する。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

PFProfileAnalyzer

public PFProfileAnalyzer()
デフォルトコンストラクタ

メソッドの詳細

getComponentName

public java.lang.String getComponentName()
コンポーネント名称を取得する。

定義:
インタフェース PFComponent 内の getComponentName
戻り値:
コンポーネント名
関連項目:
PFComponent.getComponentName()

getComponentKey

public java.lang.String getComponentKey()
コンポーネントキーを取得する。

定義:
インタフェース PFComponent 内の getComponentKey
戻り値:
コンポーネントキー文字列
関連項目:
PFComponent.getComponentKey()

setComponentKey

public void setComponentKey(java.lang.String key)
コンポーネントのキー情報を設定する

定義:
インタフェース PFComponent 内の setComponentKey
パラメータ:
key - 設定するコンポーネントのキー
関連項目:
PFComponent.setComponentKey(java.lang.String)

getComponentKeys

public PFMultiLocaleString getComponentKeys()
全ロケール分のコンポーネントキーを返す。

戻り値:
全ロケール分のコンポーネントキー

setComponentKeys

public void setComponentKeys(PFMultiLocaleString keys)
全ロケール分のコンポーネントキーを設定する。

パラメータ:
keys - 全ロケール分のコンポーネントキー

getComponentID

public int getComponentID()
コンポーネントIDを取得する。

定義:
インタフェース PFComponent 内の getComponentID
戻り値:
コンポーネントID
関連項目:
PFComponent.getComponentID()

setComponentID

public void setComponentID(int id)
コンポーネントIDを設定する。
コンポーネントIDはプラットフォームPFComponentBusから設定される。 各コンポーネント内では操作しないこと。

定義:
インタフェース PFComponent 内の setComponentID
パラメータ:
id - 設定するコンポーネントID
関連項目:
PFComponent.setComponentID(int)

getComponentString

public java.lang.String getComponentString()
コンポーネントの文字列表現を取得する。
形式:"Component Name" [ ID : "ID" ]

定義:
インタフェース PFComponent 内の getComponentString
戻り値:
コンポーネントの文字列表現を返す。
関連項目:
PFComponent.getComponentString()

getPFDataCreateListenerList

public java.util.Iterator getPFDataCreateListenerList()
データ生成イベントリスナ配列を取得する。

定義:
インタフェース PFDataCreateEventSource 内の getPFDataCreateListenerList
戻り値:
イベントリスナイテレータ

addPFDataCreateListener

public void addPFDataCreateListener(PFDataCreateListener lis)
引数で与えられたイベントリスナを登録し、 データ生成イベント発生時に処理を行う対象とする。

定義:
インタフェース PFDataCreateEventSource 内の addPFDataCreateListener
パラメータ:
lis - 追加対象イベントリスナ

removePFDataCreateListener

public void removePFDataCreateListener(PFDataCreateListener lis)
引数で与えられたイベントリスナを削除し、 データ生成イベント発生時に処理を行う対象から外す。

定義:
インタフェース PFDataCreateEventSource 内の removePFDataCreateListener
パラメータ:
lis - 削除対象イベントリスナ

localeUpdated

public void localeUpdated()
ロケール変更に対応する。

定義:
インタフェース PFComponent 内の localeUpdated
関連項目:
PFComponent.localeUpdated()

read

public void read(java.lang.String filename)
          throws PFComponentException,
                 PFMethodException,
                 PFRuntimeException
プロファイラの出力結果をロードする。 ロードに成功するとラベル付きリストを作成してデータ生成イベントが発生する。

パラメータ:
filename - 出力結果のテキストファイル名
例外:
PFComponentException - ファイルロードの失敗
PFMethodException - イベント伝播先のメソッド起動時のエラー
PFRuntimeException - 予期しない実行時エラー