2016-07-25 12 views
-2

Timer.cancel():タスクをキャンセルします。java.util.TimerTaskのpurge()を使用する必要があるのはなぜですか?

Timer.purge():キャンセルされたすべてのタスクをこのタイマーのタスクキューから削除します。

ここでpurge()を使用しないとどうなりますか?タイマーのタスクキューがいっぱいになったらどうなりますか?

+3

あなたはそれを試してみませんか? – hexafraction

答えて

0

あなたが不安定な数のタイマーを行っていない限り、実際のタイマーの動作は変更されません。 cancelメソッドは、タイマーの実行を停止しますが、プログラムはキャンセルされた後でもタイマーへの参照を保持します。したがって、使用されたメモリーは引き続き使用されます。パージメソッドを使用すると、Javaがガベージコレクションのタイマー参照をマークし、使用しているメモリを他のものに使用できるようになります。

多くのプログラムでは、多くのタイマーを使用するプログラム、短時間のバーストの多いプログラム、または一度に何日も何度もプログラムを実行する予定のパージ方法を使用する必要はありません。

関連する問題