Java プロファイリングでは、最近ではすべての (無料の) 道が JDK6 に含まれる VisualVM プロファイラーにつながっているようです。それは素晴らしいプログラムのように見え、誰もが「実行中のプロセスにアタッチする」ことができることを主な機能として宣伝しています。問題は、それがローカル プロセスで使用する唯一の方法であるように思われることです。プロファイラーでプログラムを開始し、その実行全体を追跡できるようにしたいと考えています。
how to profile application startup with visualvm-Xrunjdwp
で説明されているオプションを使用してみましたが、2 つの転送方法 (共有メモリとサーバー) の間では、どちらも役に立ちません。VisualVM は前者との統合がないようで、VisualVM はまたはへの接続を拒否するため、後者もダメです。また、プログラムに単純な読み取りを挿入して実行の一時停止を挿入しようとしましたが、その場合、VisualVM は読み取りが完了するまでブロックし、実行が開始されるまでプロファイリングを開始できません。 Eclipseプラグインも調べてみましたが、Webサイトにはリンク切れが多く、使用しようとするとランチャーがクラッシュするだけですlocalhost
127.0.0.1
System.in
(これはもはや正確ではないかもしれません)。NullPointerException
C 出身の私にとって、これは特に難しい作業ではないように思えます。何か足りないだけですか、それとも本当に不可能なリクエストですか? 別の (これも無料の) プロファイラーを使用するなど、あらゆる種類の提案を受け入れます。また、コマンド ラインも嫌いではありません。