您的位置:首页 > 编程语言 > Java开发

java 执行定时任务

2012-08-16 18:11 489 查看
public static void main(String[] args) throws InterruptedException {

//启动了默认两个线程的线程池,调度两个周期性任务。

ScheduledExecutorService execService = Executors.newScheduledThreadPool(2);

//在延时1秒后第一次执行任务,以后以5秒为周期再次执行任务。scheduleAtFixedRate拥有固定的执行周期,这里时5秒

//第一个参数是任务,第二个参数是延时时间,第三个参数是执行周期,第四个参数是时间单位

execService.scheduleAtFixedRate(newRunnableInstance(), 1, 5, TimeUnit.SECONDS);

//即每次执行时间为:initialDelay, initialDelay+executeTime+delay, initialDelay+2*executeTime+2*delay;ScheduleWithFixedDelay 取决于每次任务执行的时间长短,是基于不固定时间间隔进行任务调度。

//execService.scheduleWithFixedDelay(newRunnableInstance(), 1, 10, TimeUnit.SECONDS);

//Thread.sleep(5000L);

//execService.shutdown();

}

private static Runnable newRunnableInstance() {

return new Runnable(){

@Override

public void run() {

System.out.println(Thread.currentThread().getName()+" -> "+System.currentTimeMillis()+" task execute!");

}

};

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: