package com.gzhs.zsd.thread;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
/***
* Timer定时器运用
* @author 谢泽鹏
* @version 1.0
*/
public class Traditional_Timer {
public static Integer count = 0;
public static void initData(){
while (true) {
try {
System.out.println("记录时间: " + new Date().getSeconds() + "秒");
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
public static void main(String[] args) {
//创建定时器(10秒钟后炸弹爆炸, 之后间隔5秒钟炸弹爆炸)
//构造函数1
//new Timer().schedule(task, time); task表示调度的任务, time表示调用时间
//new Timer().schedule(task, delay); task表示调度的任务, delay调用定时器延迟X秒调用(单位/毫秒)
//构造函数2
//new Timer().schedule(task, delay, period); task表示调度的任务, delay调用定时器延迟X秒调用(单位/毫秒), period之后每次调用定时器时间间隔时间
//new Timer().schedule(task, firstTime, period); task表示调度的任务, firstTime首次调用事件, period之后每次调用定时器时间间隔时间
new Timer().schedule(new TimerTask() {
@Override
public void run() {
System.out.println("炸弹爆炸 bombing !!!");
}
}, 10000, 5000);
Traditional_Timer.initData();
new Timer().schedule(new TimerTask() {
@Override
public void run() {
System.out.println("炸弹爆炸0 bombing !!!");
new Timer().schedule(new TimerTask() {
@Override
public void run() {
System.out.println("炸弹爆炸1 bombing !!!");
}
}, 2000);
}
}, 2000);
Traditional_Timer.initData();
//定时器3秒钟调用一次
class myTimerTask01 extends TimerTask{
@Override
public void run() {
System.out.println("炸弹 bombing !!! ");
new Timer().schedule(new myTimerTask01(), 3000);
}
}
new Timer().schedule(new myTimerTask01(), 3000);
Traditional_Timer.initData();
//定时器3秒调用后 6秒钟调用
class myTimerTask02 extends TimerTask{
@Override
public void run() {
count = (count + 1) % 2;
System.out.println("炸弹 bombing !!! ");
new Timer().schedule(new myTimerTask02(), 3000 + 3000 * count);
}
}
new Timer().schedule(new myTimerTask02(), 3000);
Traditional_Timer.initData();
}
}
thread_Timer(线程中定时器)
于 2016-06-15 15:01:29 首次发布