​主流程、子流程、定时器都归于操控容器;而每个操控容器,包含一个或多个模块;在模块中界说详细的作业。

主流程、子流程、定时器、模块之间的联系

TASKCTL主流程/子流程/定时器以及模块之间的区别

主流程、子流程、定时器、模块在资源树中的表达:

TASKCTL主流程/子流程/定时器以及模块之间的区别

  • 操控容器:是作业的最大安排单位,是一个独立完好的调度操控主体。在实践运转过程中,每个操控容器也相当于一个程序,在服务端都有一个对应的进程。因而,每个操控容器在Monitor中,都具有独立启停(激活)操作的特性。

  • 模块:在TASKCTL中, 流程、定时器的作业界说信息是通过xml格局代码安排的,而详细代码信息是又存放在每一个模块文件中。同时,为了便利办理,一个流程或定时器也能够由多个模块代码信息构成。其次,像程序相同。每个程序都有一个入口main函数类,而TASKCTL流程也有一个主模块入口。

  • 流程与定时器:流程与定时器是不同的操控容器, 有一个显着的概念区别。流程对作业的安排是有序的,而定时器是无序的,作业之间不存在联系。TASKCTL,便是通过有序与无序这两种安排形式,形成了一个相对完好的操控器体系。

  • 主流程与子流程:从技术的视点,主流程相当于一个看护进程,一旦运转,除非人为或反常退出,它就常驻内存,其流程内部是一个死循环,从开端运转到完毕,又再次循环;而子流程,就相对于一个一般程序,运转完毕后,相应的进程也会主动退出。

主流程、子流程、定时器的主要用途与应用场景

  1. 总体上讲,具有先后逻辑联系的作业用流程来安排,而不具有逻辑联系且离散的作业(只具有不同时刻频度的作业)用定时器来安排。

  2. 子流程,主要用于事务逻辑作业流的安排;主流程,一般用于逻辑触发操控,用于触发子流程的调用

用几个比如,加深对主流程、子流程、定时器的主要用途与应用场景的理解

离散调用处理用定时器

TASKCTL主流程/子流程/定时器以及模块之间的区别

事务子流程

TASKCTL主流程/子流程/定时器以及模块之间的区别

用子流程来安排详细的事务处理流程

触发操控主流程

主流程主要用于流程的触发操控,本例是文件达到触发操控

TASKCTL主流程/子流程/定时器以及模块之间的区别

实践上,事务子流程的触发操控,如果是简略的定时触发,建议采用定时器;但如果是一些比较杂乱的流程触发操控,就得采用主流程来触发操控。

一个杂乱的主流程触发操控比如

TASKCTL主流程/子流程/定时器以及模块之间的区别

对应代码

TASKCTL主流程/子流程/定时器以及模块之间的区别

该比如为每周【1,3,4 】的【 8,10,16】 点阶段运转调用“我的事务处理流程”