java.lang.Object
java.util.TimerTask
- すべての実装されたインタフェース:
Runnable
public abstract class TimerTask extends Object implements Runnable
Timer
で1回または繰り返し実行するようにスケジュールできるタスク。
タイマー・タスクは再利用できません。 タスクがTimer
での実行のためにスケジュールされるか、または取消されると、実行のためにそれをスケジューリングするその後の試みはIllegalStateException
を投げます。
- 導入されたバージョン:
- 1.3
-
コンストラクタのサマリー
コンストラクタ 修飾子 コンストラクタ 説明 protected
TimerTask()
新しいタイマー・タスクが作成されます。 -
メソッドのサマリー
修飾子と型 メソッド 説明 boolean
cancel()
このタイマー・タスクを取り消します。abstract void
run()
このタイマー・タスクによって実行されるアクションです。long
scheduledExecutionTime()
このタスクの最新の実際の実行のスケジュールされた実行時間を返します。
-
コンストラクタの詳細
-
TimerTask
protected TimerTask()新しいタイマー・タスクが作成されます。
-
-
メソッドの詳細
-
run
public abstract void run()このタイマー・タスクによって実行されるアクションです。- 定義:
run
、インタフェース:Runnable
- 関連項目:
Thread.run()
-
cancel
public boolean cancel()このタイマー・タスクを取り消します。 タスクが1回実行されるようにスケジュールされたがまだ実行されていないか、またはスケジュールされていない場合、タスクは実行されません。 タスクが繰返し実行されるようにスケジュールされていた場合、タスクが再び実行されることはありません。 (この呼出し発生時にタスクが実行中であった場合、そのタスクは最後まで実行されますが、タスクが再び実行されることはない。)繰返しタイマー・タスクの
run
メソッドからこのメソッドを呼び出すと、タイマー・タスクは二度と実行されなくなります。このメソッドは、繰返し呼び出されます。2回目以降の呼出しには、効果はありません。
- 戻り値:
- このタスクが1回実行されるようにスケジュールされたがまだ実行されていないか、またはこのタスクが繰返し実行されるようにスケジュールされている場合はtrue。 タスクが1回実行されるようにスケジュールされてすでに実行されているか、またはタスクがスケジュールされてないか、あるいはタスクがすでに取り消されている場合はfalseを返す。 (大まかに言えば、このメソッドが
true
を返すのは、1つ以上のスケジュールされた実行の実施を防いだ場合である。)
-
scheduledExecutionTime
public long scheduledExecutionTime()このタスクの最新の実際の実行のスケジュールされた実行時間を返します。 (このメソッドがタスクの実行中に呼び出された場合、戻り値は進行中のタスク実行のスケジュールされた実行時間になります。)このメソッドは通常、タスクの実行メソッドから呼び出され、現在のタスクが、スケジュールどおりに作業が実行されているかを判断します。
このメソッドは通常、固定遅延実行の繰返しタスクとともに使用されることはありません。「固定遅延実行」の繰返しタスクでは、スケジュールされた実行時間はずらすことが可能であり、それほど重要ではないからです。public void run() { if (System.currentTimeMillis() - scheduledExecutionTime() >= MAX_TARDINESS) return; // Too late; skip this execution. // Perform the task }
- 戻り値:
- このタスクの実行が最近スケジュールされた時間。Date.getTime()で返される形式。 タスクがまだ実行されていない場合、戻り値は未定義
- 関連項目:
Date.getTime()
-