package timer_1;
import java.util.Timer;
/**
* java之Timer的学习
*
* timer就是一个独立的线程,简化了线程的使用
*
* 语法:
* 定义:Timer timer = new Timer();
* 使用:常用:
* timer.schedule(new timer_run(), 多少秒后执行new timer_run(),执行newTimer_run()间隔时间。可以不写,默认只执行一次);
*
* new timer_run()继承了TimerTask的类。里面要重写run
* 其他的方法:
* void cancel()
终止此计时器,丢弃所有当前已安排的任务。
int purge()
从此计时器的任务队列中移除所有已取消的任务。
void schedule(TimerTask task, Date time)
安排在指定的时间执行指定的任务。
void schedule(TimerTask task, Date firstTime, long period)
安排指定的任务在指定的时间开始进行重复的固定延迟执行。
void schedule(TimerTask task, long delay)
安排在指定延迟后执行指定的任务。
void schedule(TimerTask task, long delay, long period)
安排指定的任务从指定的延迟后开始进行重复的固定延迟执行。
void scheduleAtFixedRate(TimerTask task, Date firstTime, long period)
安排指定的任务在指定的时间开始进行重复的固定速率执行。
void scheduleAtFixedRate(TimerTask task, long delay, long period)
安排指定的任务在指定的延迟后开始进行重复的固定速率执行。
* @author 小虎牙
*
*/
public class timer_1 {
public static void main(String[] args) {
Timer timer = new Timer();
//timer.schedule(new timer_run(), 5000);// 5秒后执行new timer_run()一次
timer.schedule(new timer_run(),1000,5000);//一秒后每隔不断地执行new timer_run()
int i = 0;
while (i < 100) {
System.out.println("我是while+" + i);
i++;
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
}
}
package timer_1;
import java.util.TimerTask;
//这里写timer要执行的函数
public class timer_run extends TimerTask {
@Override
public void run() {
// TODO 自动生成的方法存根
int i = 0;
while (i < 100) {
System.out.println("我是timer" + i);
i++;
}
}
}