こんにちは、私の質問は、クラスのオブジェクトが 10 個あり、そのうちの 3 個がガベージ コレクターに渡されるかどうかです。これでアクティブなオブジェクトが 7 つになりました。クラスとjvmでアクティブなオブジェクトの数を取得するにはどうすればよいですか.
1001 次
2 に答える
4
クラスでカウンターを使用static
してコンストラクターでインクリメントし、ファイナライザーでデクリメントすることができますが、なぜ気にするのかわかりません。
于 2012-09-14T06:27:33.587 に答える
0
object= null
そうすると、JVMがガベージコレクションを実行するという保証はありません。But since you don't have reference now you will not able to access it.
Javaでは、プログラムが終了するまでメモリを気にする必要はありませんがOutOfMemoryException
、標準のプログラミング手法が引き続き適用されます:)
オブジェクトの到達可能性ライフサイクルについて詳しく読むことができます
プロファイラーを使用して、アクティブオブジェクト数を確認できます(例:JProfiler)
解決策として、オブジェクトプールパターンを使用できますが、これはアンチパターンです。
于 2012-09-14T06:26:39.773 に答える