java定时器的使用
定时器类Timer在java.util包中。使用时,先实例化,然后使用实例的schedule(TimerTask task, long delay)方法,设定指定的任务task在指定的延迟delay后运行。定时器任务类TimerTask是抽象类,继承并重写其run()方法,可实现详细任务。
schedule(TimerTask task, Date time)设定指定任务task在指定时间time运行。
cancel()方法结束这个定时器。
schedule(TimerTask task, long delay, long period)方法设定指定任务task在指定延迟delay后进行固定延迟peroid的运行。
scheduleAtFixedRate(TimerTask task, long delay, long period)方法设定指定任务task在指定延迟delay后进行固定频率peroid的运行。
要实现一个定时任务,运用java中的Timer和TimerTask类能够很easy实现实时调用处理函数。这两个类使用起来很方便,能够完毕我们对定时器的绝大多数须要。
看个简单的样例:
import java.io.IOException;import java.util.Timer;public class TimerTest { public static void main(String[] args){ Timer timer = new Timer();timer.schedule(new MyTask(), 1000, 2000);//在1秒后运行此任务,每次间隔2秒,假设传递一个Data參数,就能够在某个固定的时间运行这个任务.while(true){//这个是用来停止此任务的,否则就一直循环运行此任务了try { int ch = System.in.read();if(ch-'c'==0){ timer.cancel();//使用这种方法退出任务}} catch (IOException e) { // TODO Auto-generated catch blocke.printStackTrace();}}}static class MyTask extends java.util.TimerTask{ @Overridepublic void run() { // TODO Auto-generated method stubSystem.out.println("________");}}}