读书人

定时任务Timer施用

发布时间: 2013-07-04 11:45:28 作者: rapoo

定时任务Timer使用
定时任务Timer使用:
Timer有两种执行任务的模式,最常用的是schedule
如果你使用的是JDK 5+,还有一个scheduleAtFixedRate模式可以用,
在这个模式下,Timer会尽量的让任务在一个固定的频率下运行
java代码:

public class StudyTimer {static class MyTask extends TimerTask{String info = "^_^";@Overridepublic void run() {System.out.println(info);}public String getInfo() {return info;}public void setInfo(String info) {this.info = info;}}public static void main(String[] args){Timer timer = new Timer();MyTask task1 = new MyTask();MyTask task2 = new MyTask();task2.setInfo("myTask-2");Calendar cal = Calendar.getInstance();cal.set(Calendar.YEAR, 2013);cal.set(Calendar.MINUTE, 50);System.out.println("start:"+cal.getTime());timer.schedule(task1, 1000,2000);timer.scheduleAtFixedRate(task2, 2000, 3000);while(true){byte[] info = new byte[1024];try {int length = System.in.read(info);String strInfo = new String(info,0,length,"GBK");if (strInfo.startsWith("Cancel-1")) {task1.cancel();}else if(strInfo.startsWith("Cancel-2")){task2.cancel();}else if(strInfo.startsWith("Cancel-all")){timer.cancel();}} catch (IOException e) {e.printStackTrace();}}}}

读书人网 >编程

热点推荐