質問

VisualVMを使用して、64ビットVMでMacでプロファイルしようとしていますが、成功していません。

長い間隔でのみ更新するように見えます(キーボードから10分間離れて戻って1つの更新を見つけたまで、まったくプロファイルしないと思いました。2秒ごとに実行する必要があります)。

ほとんどの場合、「プロファイリング情報はまだ利用できない」というメッセージがあります。一度に機能したとき、4つの方法の呼び出し、合計が見つかりました。その時間枠で数百万人が発生していたでしょう。

アプリが終了したときのスナップショットには、いくつかのシステムスレッドが表示されますが、私のコードはありません。

デフォルトから設定を変更していません。コードを除外していないことを確認しました。

VisualVMは、64ビットJVMをプロファイリングするためにMACで動作しますか?

最新のJDKからJVisualVMと、java.netから少し後のバージョンの両方を試しました。

Javaバージョン "1.6.0_22" Java(TM)SEランタイム環境(ビルド1.6.0_22-B04-307-10M3261)Javaホットスポット(TM)64ビットサーバーVM(ビルド17.1-B03-307、ミックスモード)

システムバージョン:Mac OS X 10.6.4(10F569)

何かご意見は?それはあなたのために働きますか?

ありがとう!

役に立ちましたか?

解決

種類のパイロットエラー。

テストアプリをベンチマークしていて、スレッドを作成し、スレッドの実行方法でループでスピンしました。 CPUを使用するためにタイトなループ、Sleep()、およびprintln()を使用しました。

しかし、問題は、それがすべて1つの方法にあったことです。 VisualVMは、それらを終了するときにのみメソッドを追跡するように見えます。そのため、1つのメソッドループがあるため、メソッドを終了することはなく、追跡イベントを生成することもありませんでした。

コードをrun()メソッドから、run()から繰り返し呼ばれる別のメソッドに移動しましたが、現在は機能します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top