java定时任务

204 阅读1分钟

1、创建一个thread然后让它在while循环里一直运行着,通过sleep方法来达到定时任务的效果;

   sleep()方法是Thread类中的,而wait()方法是Object类中的

1.png 2、用Timer和TimerTask与第一种方法相比有如下好处:

1.当启动和去取消任务时可以控制
2.第一次执行任务时可以指定你想要的delay时间

2.png 3、用ScheduledExecutorService是从java.util.concurrent里,做为并发工具类被引进的,这是最理想的定时任务实现方式,相比以上两种的好处:

1.相比于Timer的单线程,它是通过线程池的方式来执行任务的
2.可以很灵活的去设定第一次执行任务delay时间
3.提供了良好的约定,以便设定执行的时间间隔

3.png