java.util.Timer クラス
- [内容]
- ある時間,または,一定時間毎に特定の処理を行いたいようなときに利用するクラスです
- [コンストラクタ]
- public Timer()
- public Timer(boolean isDaemon)
- Timer オブジェクトを生成します
- [主なメソッド]
- public void cancel()
- スケジュールを中止します
- public void schedule(TimerTask task, Date time)
- public void schedule(TimerTask task, long delay)
- 指定した日時,または,遅延の後にタスクが実行される
- public void schedule(TimerTask task, Date firstTime, long period)
- public void schedule(TimerTask task, long delay, long period)
- 指定した日時,または,遅延の後に,ほぼ一定間隔でタスクが実行される.何らかの理由であるタスクの実行が遅れた場合は,その後のタスクの実行も順に遅れていく.
- public void scheduleAtFixedRate(TimerTask task, Date firstTime, long period)
- public void scheduleAtFixedRate(TimerTask task, long delay, long period)
- 指定した日時,または,遅延の後に,ほぼ一定間隔でタスクが実行される.何らかの理由であるタスクの実行が遅れた場合は,遅れを取り戻すため(ある期間における実行回数を一定に保つため),2 つ以上の実行が連続して行われる場合がある.
- [使用例]
- プログラム例は,JProgressBar クラスの使用例です.クラス Test では,100 ミリ秒ごとにカウンタを 1 ずつ増加させ,カウンタの値が 500 になった時点で終了するタスクを記述しています.Timer が 500 ミリ秒ごとに割り込み,その時点におけるカウンタの値をテキストエリアに表示し,かつ,JProgressBar にその値を設定し,現在の進捗状況がわかるようになっています.

- 上の例では,タイマーとして,javax.swing.Timer を使用しましたが,この例では,java.util.Timer を使用しています.得られた結果はほとんど同じですが,スクロールバーの動きが異なります.

- [参照]
- ProgressMonitor, JProgressBar, javax.swing.Timer