Java定时任务,用到的地方可能比较多,例如:定时对数据库的某种操作、定时发送消息等等;首先我们来看看Timer.schedule这个方法:
(1)Timer.schedule(TimerTask task,Date time)安排在制定的时间执行指定的任务。
(2)Timer.schedule(TimerTask task,Date firstTime ,long period)安排指定的任务在指定的时间开始进行重复的固定延迟执行.
(3)Timer.schedule(TimerTask task,long delay)安排在指定延迟后执行指定的任务.
(4)Timer.schedule(TimerTask task,long delay,long period)安排指定的任务从指定的延迟后开始进行重复的固定延迟执行.
(5)Timer.scheduleAtFixedRate(TimerTask task,Date firstTime,long period)安排指定的任务在指定的时间开始进行重复的固定速率执行.
(6)Timer.scheduleAtFixedRate(TimerTask task,long delay,long period)安排指定的任务在指定的延迟后开始进行重复的固定速率执行.
接下来我给大家展示一个简单的定时任务例子,定时给服务器端发送一条消息:
1.定义一个定时任务处理类继承TimerTask
public class ScheduleTimerTask extends java.util.TimerTask { public String message;//需要发送到服务器上的消息 public ScheduleTimerTask(String message) { this.message = message; } @Override public void run() {//处理自己的任务 MessageSocketClient.sendMessage(message); } }
2.调用上面的任务
Timer task = new Timer(true); Date date = new Date();//执行任务的时间 task.schedule(new ScheduleTimerTask(message), date);
以上就能实现一个定时消息的发送。。