2016-03-30 9 views
1

実行時にバイトコードを変更するJava計測は、コードのパフォーマンスを監視するために使用されます。 Javaのコードのパフォーマンスを監視するためにプロファイリングさえも使用されています。私は、プロファイラとJava計測の​​強力な違いが、Java計測をより効果的にすることを知りたかったのです。ありがとうございます。プロファイラとJava計測の​​違い

+0

Funny javaには[Instrumentation](https://docs.oracle.com/javase/7/docs/api/java/lang/instrument/Instrumentation.html)インタフェースがあります。より詳細なパッケージドキュメントはこちら[こちら](https://docs.oracle.com/javase/7/docs/api/java/lang/instrument/package-summary.html) – randominstanceOfLivingThing

+0

私はそれがこのためのインタフェースを持っていることを知っています:)これは私の質問に答えません – FAZ

+0

プロファイラは計器を利用しています。最初の計測器は計測コードで実行した後に得られたデータをプロファイルします。質問は何ですか? – randominstanceOfLivingThing

答えて

1

JVMインスツルメンテーション機能は、JDK 1.5で導入され、バイトコード計測に基づいています。実際には、クラスが読み込まれると、対応するバイトコードを変更して、メソッド実行プロファイリングやイベントトレースなどの機能を導入することができます。 Java Application Performance Management(APM)ソリューションのほとんどは、このメカニズムを使用してJVMを監視します。

多くの場合、プロファイラーはInstrumentationを使用して追加情報を取得します。 のプロファイリングは、プロファイラ(またはコードプロファイラ)と呼ばれるツールを使用して、プログラムソースコードまたはバイナリ実行可能形式のいずれかをインストルメントすることによって実現されます。プロファイラは、イベントベース、統計、計装、シミュレーションなど、さまざまな手法を使用できます。

関連する問題