1、=========从一个框架开始=========
部分英文单词释义:
Sequential:顺序的
Prior:优先的
middle:中间的
Parallel:并行
rear:后面的
抽象看来,我们的调度任务具有的属性主要有:执行顺序(先/后)、执行方式(串行/并行)、定时执行、日志。Oddjob完全可以满足以上需求。因为它比较简单,可以直接从一个框架开始。
这个框架可以说是一个基本的骨架,把要调度的任务放到正确的地方就行了。如图:
图中定义了一个OddjobFrame的框架,下边有一个Timer,是用来定义执行时间的(稍后详细解释),定义了一组顺序执行的job――SequentialJob,其中有6个job,两个先执行――prior job 1 和 prior job 2 ,然后是两个在中间执行――middle job 1 和 middle job 2 ,这两中job中分别定义了一组并发执行的job,然后是两个最后执行――rear job 1 和 rear job 2 。图的右边是这个调度执行的结果。从图中可以看到这一系列的job以定义的顺序先后执行,而中间的两个并行执行的job中的单个job是以并发的方式执行的。
根据这个骨架,可以把要需要先行执行的job放到prior job 1的地方,把需要并发执行的job放到middle job 1 / middle job 2的ParallelJob中,Oddjob支持鼠标拖动的方式调整顺序,也可以复制/粘贴/剪切一个job。