2

重複の可能性:
Javaのガベージコレクターとは何ですか?

私のプログラムでは、を使用して一定時間(この例では20分として設定します)後に別の関数を呼び出す関数を設定していますScheduledThreadPoolExecutor

呼び出される関数は、と言いますremoveStat(Character char)。このメソッドでは、サイドキャラクターの関数を参照します(これから説明しますchar.getClient().getWriter())。20分間の待機期間中に、問題のキャラクターがログアウトし、そのキャラクターインスタンスは不要になったと想定します。

その間にJavaガベージコレクターがCharacterクラスを削除して、char inremoveStatがnullになるのでしょうか、それとも呼び出しが行われるまで待機することを知っているのでしょうか。

4

1 に答える 1

5

ガベージコレクター(Javaを含む)は十分に賢いので、これについて心配する必要はありません。ガベージコレクターは、それへのすべての参照が消えるまで、何もガベージコレクションしません。オブジェクトがまだアクセス可能である場合、それはまだ存在しています。

于 2012-05-13T00:30:37.030 に答える