如何使用Java Timer处理多个重复任务?

时间:2012-07-13 20:55:32

标签: java timer

我希望我的java应用程序首先运行重复任务A,然后运行B,然后使用Java Timer类运行C.

帮助。

2 个答案:

答案 0 :(得分:2)

使用 ScheduledThreadPoolExecutor 是更好的选择。 如果您使用的是JDK1.5 +,则更准确,更好的异常处理。

答案 1 :(得分:0)

您可以尝试这种方法。通过适当的异常处理扩展它,以确保始终安排下一个任务。

static final Timer t = new Timer();
static final long delay = 1000;
public static void main(String[] args) {
  t.schedule(new A(), delay);
}
static class A extends TimerTask { public void run() {
    // do stuff;
    t.schedule(new B(), delay);
} }
static class B extends TimerTask { public void run() {
    // do stuff;
    t.schedule(new C(), delay);
} }
static class C extends TimerTask { public void run() {
    // do stuff;
    t.schedule(new A(), delay);
} }