现在关于时间调度、任务调度开源的东西不少,比较流行的是quartz框架,它已经集成到spring里面了,操作起来十分方便。
这里我不想说太多关于Quartz的问题,通过观察源码,发现里面就是一个Scheduler容器维护Job以及Trigger,通过Job和Trigger的组合完成任务调度。
我根据自己的理解,书写了一个框架,大体思路是一个任务由多个Job去完成,任务是一个框架,负责Job的管理,包括Job的启动,关闭等。
规划:我希望在未来的一段时间好好研究一下这个问题,并发布版本号为1的类名和包。后续会不断更新,包括设计思路以及类图等。
2011.09.02 简单的思路已经完成,版本为0.1
具体的类图如下:
该框架可以实现任意多线程的并发,并保证一定的性能。
适用范围:需要多个任务去执行同一个功能模块。例如从数据库多次提取数据,同时生成多个文件等等。