private final Timer timer = new Timer("BenchmarkTimerThread", true);
@Test
public void test1() {
// 定时任务执行
// 第一个参数是延时的任务 第二参数代表多久后执行 第三个参数代表
// 连续任务执行之间的时间(以毫秒为单位)。
System.out.println("任务起始时间 ---> " + System.currentTimeMillis());
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
System.out.println("任务开始执行 ---> " + System.currentTimeMillis());
}
}, 2000L, 1000L);
try {
Thread.sleep(50000L);
} catch (InterruptedException e) {
System.out.println(e.getMessage());
}
// 结果:任务起始时间 ---> 1642836681663
//任务开始执行 ---> 1642836683664
//任务开始执行 ---> 1642836684668
//任务开始执行 ---> 1642836685668
//任务开始执行 ---> 1642836686667
//任务开始执行 ---> 1642836687663
//任务开始执行 ---> 1642836688668
//任务开始执行 ---> 1642836689667
//任务开始执行 ---> 1642836690668
//任务开始执行 ---> 1642836691668
//任务开始执行 ---> 1642836692669
//任务开始执行 ---> 1642836693668
//任务开始执行 ---> 1642836694667
//任务开始执行 ---> 1642836695668
//任务开始执行 ---> 1642836696669
//任务开始执行 ---> 1642836697668
// 起始与第一次执行间隔2000ms 之后每次间隔1000ms
}