基于优先级的任务流程设置系统及方法与流程

文档序号:19154994发布日期:2019-11-16 00:37阅读:227来源:国知局
基于优先级的任务流程设置系统及方法与流程

本申请涉及计算机信息技术领域,尤其涉及一种基于优先级的任务流程设置方法。



背景技术:

现有照明软件任务设置分为:任务组名称、任务模式、任务执行时间、任务动作。这四个条件需同时下发配置成功,才能保证任务的正常执行。

路灯照明按不同的使用场景,有不同的任务设置要求。按日期可分为工作日、节假日、重大节日;按车流量可分为流量高峰期、流量平缓期、流量低峰期;按24小时可分为开灯节点、关灯节点、调光节点、查询节点;按照使用目的可分为普通照明、隧道照明、夜景亮化。不同的场景需要在各日期、各时间段设置各种任务动作,并一一配对下发,要求任务时间不可交叉重叠,各种限制条件给工程应用带来诸多不便。



技术实现要素:

为了解决上述技术问题,本申请实施例提供一种基于优先级的任务流程设置系统及方法,提供可灵活编辑的重大任务设置方案。

本申请实施例第一方面提供了一种基于优先级的任务流程设置系统,包括:

任务组模块,用于存储所要执行的任务内容;

任务设定模块,用于修改任务组模块内的任务内容;

其中,任务组模块设置有至少两组,任务组模块之间存在优先级;

优先级最低的任务组模块作为常规任务组模块;在未有优先级更高的任务被执行时,常规任务组模块中的任务作为系统一直持续执行的任务内容。

进一步地,任务组模块的任务内容按照时间设定。

进一步地,任务组模块的任务内容按照固定周期循环执行。

进一步地,固定周期为周时长或月时长或日时长。

进一步地,任务组模块包括:

优先级模块,用于设定该任务组模块的优先级;

任务内容模块,用于设置任务内容;

时间模块,用于设置任务内容时间;

其中,任务内容模块与时间模块一一对应。

进一步地,任务内容模块和时间模块的修改权限只限于任务设定模块。

进一步地,任务内容模块在任务组模块中以对应的时间模块中的时间顺序进行排列。

进一步地,任务组模块下发任务至执行端,执行端以当前时间为起点,选择合适的任务内容执行;

其中,合适的任务内容需同时满足:

i)当前时间上有任务内容,非空;

ii)在i)的基础上,所对应的任务组模块的优先级别最高;

iii)所对应的任务组模块的优先级不低于当前正在执行的任务内容所对应的级别。

本申请实施例第二方面提供了一种基于优先级的任务流程设置方法,包括:

设置至少两组任务组,每组任务组中通过添加或修改的方式进行任务内容的调整;每个任务组之间的优先级不同,优先级最低的任务组作为常规任务组模块,在未有优先级更高的任务被执行时,其中的任务作为一直持续执行的任务内容;

将所有任务组的内容下发至执行端;执行端按照优先级由高到低的顺序将当前时间下的最高优先级的任务内容执行;

执行端执行任务,同时以当前时间为起始时间,执行端再次按照优先级由高到低的顺序搜索是否有当前时间下的更高优先级的任务内容,若有则立即切换执行符合条件的最高优先级的任务内容,否则不产生切换执行的动作;

不断重复上述过程,实现任务的自动执行。

进一步地,将待执行任务以任务组形式设置两组,分别为第一任务组和第二任务组,其中,第一任务组的优先级低于第二任务组,将第一任务组作为常态任务组,作为一直执行的任务组;将第二任务组作为临时调整任务组,作为根据实际情况调整的任务组。

进一步地,在执行第一任务组的任务内容期间,对第二任务组内的任务内容进行添加或修改操作;

第一任务组内的任务内容以固定周期进行循环执行。

进一步地,第一任务组和第二任务组内的任务内容可任意时间修改。

进一步地,在执行任务期间,对任务内容进行修改时,若修改时间为当前时间之前,在当前执行周期之后的新周期内执行修改后的任务。

进一步地,执行端执行第一任务组的任务,同时以当前时间为起始时间,当第二任务组内有任务内容时,将该任务下发至执行端,并立即执行;第二任务组的任务执行完毕后,继续执行第一任务组在该时间节点之后的任务内容。

在本申请可提供可灵活编辑的任务设置方案;解决重大节日期间任务同日常任务冲突,重大任务遗漏执行问题;优化任务设置,可便于任务的随时调整且不用对常规任务做出修改。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请的方法流程图;

图2是本申请的一个具体实施例的示意图。

具体实施方式

为使得本申请的申请目的、特征、优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本申请一部分实施例,而非全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

下面结合附图并通过具体实施方式来进一步说明本申请的技术方案。

在本申请的描述中,需要理解的是,术语“上”、“下”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。

本申请中所涉及的一种基于优先级的任务流程设置方法,包括:

s100:设置至少两组任务组,每组任务组中通过添加或修改的方式进行任务内容的调整;每个任务组之间的优先级不同。

可以理解的是,通过事先设置多组任务组的形式,并将每个任务组的优先级别设置的完全不同,对于后续任务的执行以及修改都可以通过优先级作为一个选择的标签。

s200:将所有任务组的内容下发至执行端,下发时将优先级的标志信息一同下发;执行端按照优先级由高到低的顺序将当前时间下的最高优先级的任务内容执行;

可以理解的是,在同一个时间节点,虽然会有多个任务组,每个组里可能存储有需要执行的任务,对于没有任务的记为空,执行端按照优先级执行最高的任务内容,执行端的硬件内部有rtc定时器,自动到点执行任务。

s300:执行端执行任务,同时以当前时间为起始时间,执行端再次按照优先级由高到低的顺序搜索是否有当前时间下的更高优先级的任务内容,若有则立即切换执行符合条件的最高优先级的任务内容,否则不产生切换执行的动作;

而为了配合这一设定,在当前时间后的所有任务组内容,仍需要不断识别是否有更高级别的任务组内有需要执行的任务内容。对于出现新的更高优先级的任务内容,将其中最高优先级的任务内容立马由执行端执行。否则,将当前正在执行的任务执行完毕。

s400:不断重复上述s300,实现任务的自动执行。

作为一个实施例,以两个待执行任务组为例进行说明,分别记为任务组a和任务组b。

其中任务组a和任务组b均设置有很多个任务,且每个组内的任务时间上是没有任何重叠的。

在优先级别上任务组a高于任务组b,本方法在实施时,首先在时间t1点上任务组a若没有任务,则将任务组b内的任务立马下发至硬件后执行。

若该动作后,任务组a有任务a1,则将任务a1立马下发至硬件后执行;

若该动作后,任务组a仍无任务,则继续执行任务b1;

任务b1执行完毕后,再次重复上述动作。

在执行任务的过程中,如果发现更高级别的任务或者当前任务未执行段被修改,则立即执行更高级别的任务或者按照修改后的任务执行。

对于每一个任务组,任务均可进行修改,修改之后的任务组,会立马被下发至执行端。

由于优先级别上任务组a高于任务组b,因此将任务组b设置为常用任务组,在无意外的情况下,一般都是按照任务组b的内容执行,当需要对任务进行修改的时候,为了防止任务组b因为修改需要整个暂停任务组b的内容,直接在任务组a进行更改任务的设定,之后在后台执行的过程中,对于任务组a中有内容的部分就会优先执行,通过任务组a、任务组b的任务设置,任务组b作为常用任务组,保证任务全覆盖可执行,任务组a保证可设置重大任务,实现可灵活编辑的任务设置,解决重大节日期间任务同日常任务冲突,重大任务遗漏执行问题。

这样的方式,对于常规任务,可以直接设定在任务组b,也可以将任务组b的任务设置成固定周期的循环执行,比如以周时长或者月时长,都可以设定。

对于有突发性的任务,可以直接设置在任务组a中,这样就可以实现即时地更改任务组,且不需要对任务组b进行修改,降低了修改的冗杂程度。

此外,还可以设置有更高优先级的任务组c,以便于对任务组a中的任务进行修改。

下面结合图2对本申请实施例提供的基于优先级的任务流程设置系统进行介绍,可以包括:

任务组模块101,用于存储所要执行的任务内容;

任务设定模块201,用于修改任务组模块内的任务内容;

任务执行模块301,接受任务组模块下发的任务内容并进行操作;

其中,任务组模块设置有至少两组,任务组模块之间存在优先级。

本实施例中,以任务组模块a,b进行说明,且任务组模块a优先级高于任务组模块b。

本实施例中,每个任务组模块101包括:

优先级模块1011,用于设定该任务组模块的优先级,优先级的设定可以通过设置数字的形式亦或者其他形式。

任务内容模块1012,用于设置任务内容,任务内容可以进行修改,如果修改时间在任务开始执行时间之后,则当天依旧执行修改前的任务,修改后的任务在下一周期执行。

时间模块1013,用于设置任务内容时间,任务内容模块与时间模块一一对应,组成待执行任务模块。

任务组模块下发任务至任务执行模块时,以当前时间为起点,选择合适的任务内容下发;

其中,合适的任务内容需同时满足:

i)当前时间上有任务内容,非空;

ii)在i)的基础上,所对应的任务组模块的优先级别最高;

iii)所对应的任务组模块的优先级不低于当前正在执行的任务内容所对应的级别。

在实际的操作中,为了进一步地提高灵活编辑的任务设置体验,直接将一个优先级非最高的任务组模块作为常规任务组(实际中优先级最低的任务组模块作为常规任务组效果最好),在本实施例中,任务组模块b作为常规任务组。

在一般情况下,都是执行任务组模块b中的任务,对于有特殊情况,比如需要临时更改任务,或者因为某些原因,需要更改后面的某些时间段的任务,则将所要新执行的任务,直接录入到任务组模块a中。

在本系统硬件获取任务的过程中,一旦发现任务组模块a中有任务,则直接启动执行任务组模块a中的任务。

本申请相对于现有技术来说:1,可提供可灵活编辑的任务设置方案。2、解决重大节日期间任务同日常任务冲突,重大任务遗漏执行问题。3、优化任务设置,可便于任务的随时调整且不用对常规任务做出修改。

作为一个具体的实施例,任务组模块b作为常规任务组,可按照星期设置的“周任务”循环任务。

如图2作为一个具体实施例,在任务组b中设置有b1任务,b2任务,b3任务,任务组a中临时添加有a1任务和a2任务。

在实际任务执行的时候,依次执行的是b1任务,b2任务,b3任务在t5时间开始执行,t7时间截止,执行a1任务,t8时间结束任务a1,继续执行b3任务,t9时间执行a2任务,t10结束。

以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本申请的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1