本文实例主要进行java Timer(定时调用、固定时间执行)测试,具体实现代码如下。
测试1
当任务执行时间小于重复执行的间隔时间
代码:
public class TimerTest2 {
public static void main(String[] args) throws InterruptedException {
Timer timer = new Timer();
timer.schedule(new MyTask(0), 1000, 10000);
//timer.schedule(new MyTask(1), 1000, 10000);
}
static class MyTask extends TimerTask {
private final int i;
public MyTask(int i) {
this.i = i;
}
@Override
public void run() {
System.out.println(i + "dddd" + DateTimeUtil.getDateTimeString("yyyy-MM-dd HH:mm:ss.SSS"));
try {
if (i == 0) {
Thread.sleep(8000L);
} else {
Thread.sleep(13000L);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
结果:
测试2
当任务执行时间大于重复执行的间隔时间
代码:
public class TimerTest2 {
public static void main(String[] args) throws InterruptedException {
Timer timer = new Timer();
//timer.schedule(new MyTask(0), 1000, 10000);
timer.schedule(new MyTask(1), 1000, 10000);
}
static class MyTask extends TimerTask {
private final int i;
public MyTask(int i) {
this.i = i;
}
@Override
public void run() {
System.out.println(i + "dddd" + DateTimeUtil.getDateTimeString("yyyy-MM-dd HH:mm:ss.SSS"));
try {
if (i == 0) {
Thread.sleep(8000L);
} else {
Thread.sleep(13000L);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
结果:
总结
以上就是本文关于java Timer测试定时调用及固定时间执行代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!