2012-02-23 12 views
0

JVMにクエリを行い、そこで実行されているJavaクラスとメソッドのCPU使用率(%)を調べるエージェント/ javaプログラムが必要です。JavaクラスのCPU使用率(%)を調べる方法

+0

これらのプログラムはプロファイラーと呼ばれます。http://stackoverflow.com/questions/14762/please-recommend-a-java-profiler – Matthias

+0

Google [VisualVM](http://visualvm.java.net/)を参照してください。 – Marcelo

+0

[JProfiler](http://www.ej-technologies.com/products/jprofiler/overview.html)と[TPTPプロファイラ](http://www.deepakgaikwad.net/index.php/2009/02/)を使用してください。 10/tutorialprofiling-with-tptp-and-tomcat.html) – developer

答えて

2

クラスとメソッドはCPUを使用しないことに注意してください(ロードまたはコンパイルされている場合を除いて)。これを行うのにかかる時間は通常あまり面白くありません。

スレッドはCPUを使用し、さまざまな方法でさまざまな時間を費やします。

これを行うには、診断しようとしているパフォーマンス上の問題があると仮定して、CPUプロファイラを使用できます。パフォーマンスの問題がない限り、これは有用ではありません。場合によっては、プロファイラが間違った理由でプログラムが正しく動作しているように見えることがありますが、これはまれです。

便利なもう1つのツールは、メモリプロファイラを使用しており、問題の本当の原因になる可能性があります。

多くの場合、パフォーマンスの問題は、ディスク、ネットワーク、またはその他のIOデバイスの速度が原因です。この場合、プロファイラはあなたに何も表示しないので、プロファイラの使用を開始する前に、問題の原因と考えられる原因を知ることができます。

+0

自分のプロファイラを作成したいのですが、メソッド内の各メソッドやスレッドのCPU使用率を調べるためのJavaコードが必要です。 。 – user1177567

関連する問題