JavaのTimerクラスの使い方は何ですか?
JavaのTimerクラスは、スケジュールされたタスクを実行するためのユーティリティクラスです。指定された遅延時間後にタスクを実行したり、固定の時間間隔でタスクを繰り返したりすることができます。
Timerクラスの使い方は以下の通りです。
- タイマーオブジェクトを作成する:Timer timer = new Timer();
- schedule()メソッドを使用して、タスクを1回実行するか、一定の時間間隔で実行することができます。
- 一度のタスクを実行します:
timer.schedule(new TimerTask() {
@Override
public void run() {
// タスクのロジック
}
}, delay);ここでのdelayは遅延時間で、単位はミリ秒です。 - 一定の時間間隔でタスクを実行する場合は、
timer.schedule(new TimerTask() {
@Override
public void run() {
// タスクロジック
}
}, delay, period);ここでのdelayは遅延時間であり、periodは時間間隔であり、両方の単位はミリ秒です。 - タイマーの実行をキャンセルするために、cancel()メソッドを使用します。timer.cancel();
Timerクラスは、シングルスレッドであるため、1つのタスクの実行時間が長すぎると他のタスクの実行に影響を与える可能性があります。また、Timerクラスは実行時間を正確に制御する必要がある場合には適していません、なぜならシステム時間の影響を受けるからです。Java 5以降のバージョンでは、ScheduledThreadPoolExecutorクラスをTimerクラスの代わりに使用することをお勧めします。