Netbeansのメモリ監視ツール(実際にはVisualVmと同じツールである
は埋め込みVisualVm
)は、メモリリークを追跡するためのintermeting metric:Surviving Generations Metricを持っています。生存世代のメトリックの理解
definition of this metricがoracle.comで見つけることができる:
- 生成は、(二ガベージコレクションの間で)同じGC間隔
- 存続世代が生存生成である内で作成されたインスタンスのセットであります少なくとも1つのガベージコレクション。生き残ったガベージコレクションの数 - 世代の年齢は - そのユニークな識別子
- 存続ジェネレーションズ(メトリック)の値は、ヒープ上で、現在生きている別の生き残りの世代数(異なる世代の年齢と世代数)
2番目の定義について質問があります。私はインスタンスがガベージコレクションを生き残るためにはどういう意味があるのか分かっています。しかし、私は世代がガベージコレクションで生き残るためには何を意味するのか分かりません。 世代の少なくとも1つのインスタンスがガーベッジコレクションを生き延びていることを意味しますか?
小さな訂正:Netbeansのメモリ監視ツールは、埋め込みVisualVMではありません。 VisualVMには、NetBeans Profilerの削除されたバージョンが含まれています。 VisualVMのCPUおよびメモリプロファイリングは、NetBeans Profilerコードに基づいています。 –
情報ありがとうございます。私は私の質問を更新しました。 – barjak