0

次のスクリーンショットは、IBM Heap Analyzer から取得したものです。 ここに画像の説明を入力

「Finalize()メソッドを実装したオブジェクト数」と「Finalize()メソッドを実装したガベージオブジェクト数」の違いが知りたいです。

4

1 に答える 1

1

私が理解しているように、「Finalize()メソッドを持つオブジェクトの数」とは、ヒープ上にfinalizeメソッドを持つ5つのライブオブジェクトがあることを意味します。あなたがそれらの多くを持っているなら、それらはそれ自体害を及ぼすことはありません-それらがGCされなければならないまで。だから、それは地平線上で何かが醸造されていることのヒントです。

値「finalize()メソッドを実装するガベージオブジェクトの数」は、メソッドを持つガベージコレクションされたオブジェクトの数を示しますfinalize()。上記の数とは異なり、これらは代償を払ったオブジェクトです。

最初の数が少なく、それらのオブジェクトが長寿命である場合、心配する必要はありません。

最初の数が小さく、2番目の数が多い場合は、メソッドを持つ短期間のオブジェクトが多数あることを意味しますfinalize()。これは、GCの実行がより高価になるため、問題になる可能性があります。

于 2011-07-29T09:54:49.390 に答える