Java定时任务

package test;

import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
public class test {
    public static void main(String[] args) {
        //1. schedule(TimerTask task, long delay) 延迟 delay 毫秒 执行
        for (int i = 0; i < 10; ++i) {
            new Timer("timer - " + i).schedule(new TimerTask() {
                @Override
                public void run() {
                    System.out.println(Thread.currentThread().getName() + " run ");
                }
            }, 1000*i);
        }
        //2. schedule(TimerTask task, Date time) 特定時間執行
        for (int i = 0; i < 10; ++i) {
            new Timer("timer - " + i).schedule(new TimerTask() {
                @Override
                public void run() {
                    System.out.println(Thread.currentThread().getName() + " run ");
                }
            }, new Date(System.currentTimeMillis() + 2000*i));
        }
        //3. schedule(TimerTask task, long delay, long period) 延迟 delay 执行并每隔period 执行一次
        for (int i = 0; i < 10; ++i) {
            new Timer("timer - " + i).schedule(new TimerTask() {
                @Override
                public void run() {
                    System.out.println(Thread.currentThread().getName() + " run ");
                }
            }, 2000*i , 1000);
        }
    }
}

补充:

import java.util.Timer类有多个构造方法:

Timer()

默认构造函数。

Timer(boolean)

指定关联线程是否作为daemon线程。

Timer(String)

指定关联线程的名称。

Timer(String, boolean)

同时指定关联线程的名称和是否作为daemon。


阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页