看完这篇文章你会了解到什么是定时任务,以及为什么austin项目要引入分布式定时任务框架,可以把代码下载下来看到我是怎么使用xxl-job
的。
01、如何简单实现定时功能?
我是看视频入门Java的,那时候学Java基础API的时候,看的视频也带有讲定时功能(JDK原生就支持),我记得视频讲师写了Timer
来讲解定时任务。
当时并不知道定时任务有什么实际作用,所以在初学阶段的我,从来没使用过Timer来实现定时的功能。
再后来,我学到并发了。那时候的讲师提到了ScheduledExecutorService
这个接口,它比Timer
更加强大,一般我们在JDK里可以用它来实现定时的功能
强就强在于ScheduledExecutorService
内部是线程池,Timer
是单线程,它能更合理的利用资源。
我学并发的时候,我也并不太关注它(它并不是并发的重点),所以我也没用过ScheduledExecutorService
来实现定时的功能。
后来吧,要到学习做项目了,那时候视频有个