ここでのコメントの 1 つは、VisualVM がプロファイラーであるということです。VisualVM はプロファイラーではなく、NetBeans プラットフォームの上に構築されたプラットフォームです。プラットフォームは、MBeanPlatformServer、Serviceability Agent (SA)、Attach on demand などへの JMXConnector の使用を含む、さまざまな方法で進行中の VM への接続をサポートします。
VisualVM には 2 つの異なるプロファイラーが含まれていますが、MBeansPlatformServer に登録されている MBean を表示および操作できる MBean プラグインもあります。
MBeansPlatformServer に登録されている java.lang.management パッケージにある MXBean からの VisualVM スクレイピング データの数。これらの MXBean の多くは、一連のパフォーマンス カウンターを維持する HotSpot のコンポーネントである SA のラッパーです。たとえば、カウンターは、JIT コンパイラ アクティビティ、GC アクティビティ、さらにはホスト プラットフォームの CPU 使用率などに関する情報を提供できます。
MBean を表示または操作するための独自のプラグインを簡単に作成できます。ここの投稿で言及されているチュートリアルは、それを実行する方法に関する 1 つの情報源です。MemoryPool MXBeans からのデータを参照する VisualVM プラグインのデモを作成しました。そのプラグインは、他の多くのことを行うために他の人によって拡張されています. すべてのコードは、プロジェクト MemoryPoolView の java.net にあります。読み取りデータをカバーしています。ただし、機能の実行とは、対話している MBean が必要とするパラメーターを使用して JMXConnector に対してメソッドを実行することです。IOWs、それはプラグインのかなり些細な拡張です。