一种HTML页面定时队列调度方法、系统、装置和存储介质制造方法及图纸

技术编号:19691311 阅读:36 留言:0更新日期:2018-12-08 11:02
本发明专利技术公开了一种HTML页面定时队列调度方法、系统、装置和存储介质,其方法步骤包括:创建定时器队列维护方法;将需要定时执行的方法注册进上述定时器队列维护方法;设置定时器超时对象和相应执行一次定时器队列维护方法的间隔时间;执行定时器超时对象。本发明专利技术通过定时器队列维护方法达到统一维护Javascript定时任务的效果,在定时器队列维护方法中设置需要定时执行的方法、所对应的启动时间、结束循环时间、循环间隔时间和循环次数五个参数,使循环任务的控制更加灵活,并且减少代码冗余,降低复杂度,简化浏览器线程的调度逻辑,提高执行效率。本发明专利技术作为一种HTML页面定时队列调度方法、系统、装置和存储介质可广泛应用于数据处理领域。

【技术实现步骤摘要】
一种HTML页面定时队列调度方法、系统、装置和存储介质
本专利技术涉及数据处理领域,尤其是一种HTML页面定时队列调度方法、系统、装置和存储介质。
技术介绍
随着互联网的蓬勃发展,我们已然迈入了Web2.0时代。在这个时代里,用户是主体,互联网以人为本,用户可以在网上发表观点、参与互动,可以分享、聚合信息。这比多年前甚至更久以前的用户单纯从互联网接收信息,有了很大的进步,而HTML技术在这中间起到了决定性的作用,其中Javascript作为html中的“行为”角色,又举足轻重,好的用户体验就从中体现。这势必绕不开使用js(Javascript)作为定时器,进行一系列的页面操作,但随着页面的功能扩展,定时器的不断增加使整个页面的执行效率变得异常臃肿,开发代码和维护难度也直线上升。所以,解决定时器的精简问题,是优化体验、减少开发成本的重要途径。Javascript中的定时器分为两种:setTimeout和setInterval,前者是设置一个超时对象,超时(指定时间)后执行这个对象,只执行一次无周期。后者同样是设置超时对象,区别是间隔周期时间无限次执行对象。众所周知,js是单线程的,对于浏览器来说,js只是众多执行线程中的一条,我们称之为“Javascript引擎线程”,其循环定时执行的原理是利用浏览器的多线程,将自己的多个已超时任务移交给浏览线程执行,如图1所示。如果定义的超时对象过多,势必增加该线程的调度难度,也对代码维护带来困难,增加开发成本。例如,假设HTML页面有3个定时执行方法:每1秒执行一次的function_1()执行3次后停止、每10秒执行一次的function_2()60秒后停止、每30秒执行一次的function_3()在页面执行15秒后开始。以现有的方法,需要定义3个循环定时器setInterval(“function_1();”,1000),setInterval(“function_2();”,10000),setInterval(“function_3();”,30000),方法的第一个参数为需要被执行的任务,第二个参数为循环时间,单位毫秒。执行此3个定时器会对Javascript引擎线程中增加3个Internval对象,等待浏览器多线程调度,并且各自的执行具体时间不再可控,只要浏览器线程在,则他们就会无限置的执行下去,如果需要单独维护各自的起效与失效时间或次数,则需要在恰当的时间点,额外执行clearInterval(“之前的超时对象”)和setTimeout()单次定时器。整体逻辑变得异常复杂。
技术实现思路
为了解决上述技术问题,本专利技术的目的是:提供一种简化定时任务执行逻辑的基于HTML页面的定时队列调度方法。为了解决上述技术问题,本专利技术的另一目的是:提供一种简化定时任务执行逻辑的基于HTML页面的定时队列调度系统。为了解决上述技术问题,本专利技术的另一目的是:提供一种简化定时任务执行逻辑的基于HTML页面的定时队列调度装置。为了解决上述技术问题,本专利技术的另一目的是:提供用于实现一种简化定时任务执行逻辑的基于HTML页面的定时队列调度方法的存储介质。本专利技术所采用的技术方案是:一种基于HTML页面的定时队列调度方法,包括有以下步骤:创建定时器队列维护方法time_list();将需要定时执行的方法注册进上述定时器队列维护方法time_list();设置定时器超时对象setInterval(“time_list();”,t),t为执行一次定时器队列维护方法time_list()的间隔时间;执行定时器超时对象setInterval(“time_list();”,t)。进一步,该定时队列调度方法采用Javascript实现。进一步,所述定时器队列维护方法time_list()的输入参数包括有需要定时执行的方法名称func_name以及需要定时执行的方法func_name所对应的启动时间start_time、结束循环时间end_time、循环间隔时间loop_time和循环次数loop_count。进一步,所述启动时间start_time为0时表示立即执行;所述结束循环时间end_time为0时表示无结束循环时间限制;所述循环次数loop_count为0时表示无循环次数限制。本专利技术所采用的另一技术方案是:一种基于HTML页面的定时队列调度系统,包括有创建模块,用于创建定时器队列维护方法time_list();注册模块,用于将需要定时执行的方法注册进上述定时器队列维护方法time_list();定时器设置模块,用于设置定时器超时对象setInterval(“time_list();”,t),t为执行一次定时器队列维护方法time_list()的间隔时间;执行模块,用于执行定时器超时对象setInterval(“time_list();”,t)。进一步,该系统采用Javascript实现。进一步,所述注册模块在将需要定时执行的方法注册进上述定时器队列维护方法time_list()时,给所述定时器队列维护方法time_list()输入参数;所述输入参数包括有需要定时执行的方法名称func_name以及需要定时执行的方法func_name所对应的启动时间start_time、结束循环时间end_time、循环间隔时间loop_time和循环次数loop_count。进一步,所述启动时间start_time为0时表示立即执行;所述结束循环时间end_time为0时表示无结束循环时间限制;所述循环次数loop_count为0时表示无循环次数限制。本专利技术所采用的另一技术方案是:一种基于HTML页面的定时队列调度装置,包括有至少一个处理器;和一存储介质,该存储介质包括有处理器可执行指令,所述计算机可执行指令在由处理器执行时用于执行如权利要求1-4中任一权利要求所述的一种基于HTML页面的定时队列调度方法。本专利技术所采用的另一技术方案是:一种计算机可读存储介质,该存储介质包括有计算机可执行指令,所述计算机可执行指令在由计算机处理器执行时用于执行上述一种基于HTML页面的定时队列调度方法。本专利技术的有益效果是:通过定时器队列维护方法time_list()达到统一维护Javascript定时任务的效果,在定时器队列维护方法time_list()中设置需要定时执行的方法func_name所对应的启动时间start_time、结束循环时间end_time、循环间隔时间loop_time和循环次数loop_count五个参数,使循环任务的控制更加灵活,并且减少代码冗余,降低复杂度,简化浏览器线程的调度逻辑,提高执行效率。附图说明图1为现有技术中浏览器内核多线程执行的时序示意图;图2为本专利技术方法的步骤流程图。具体实施方式下面结合附图对本专利技术的具体实施方式作进一步说明:参照图2,一种基于HTML页面的定时队列调度的具体实施方法包括有以下步骤:创建定时器队列维护方法time_list();所述定时器队列维护方法time_list()定义为:time_list(func_name,start_time,end_time,loop_time,loop_count)输入参数包括有需要定时执行的方法名称func_name以本文档来自技高网
...

【技术保护点】
1.一种基于HTML页面的定时队列调度方法,其特征在于,包括有以下步骤:创建定时器队列维护方法;将需要定时执行的方法注册进上述定时器队列维护方法;设置定时器超时对象setInterval(“time_list();”,t),其中time_list()为定时器队列维护方法,t为执行一次定时器队列维护方法的间隔时间;执行定时器超时对象。

【技术特征摘要】
1.一种基于HTML页面的定时队列调度方法,其特征在于,包括有以下步骤:创建定时器队列维护方法;将需要定时执行的方法注册进上述定时器队列维护方法;设置定时器超时对象setInterval(“time_list();”,t),其中time_list()为定时器队列维护方法,t为执行一次定时器队列维护方法的间隔时间;执行定时器超时对象。2.根据权利要求1所述的一种基于HTML页面的定时队列调度方法,其特征在于:该定时队列调度方法采用Javascript实现。3.根据权利要求1所述的一种基于HTML页面的定时队列调度方法,其特征在于:所述定时器队列维护方法的输入参数包括有需要定时执行的方法名称以及需要定时执行的方法所对应的启动时间、结束循环时间、循环间隔时间和循环次数。4.根据权利要求3所述的一种基于HTML页面的定时队列调度方法,其特征在于:所述启动时间为0时表示立即执行;所述结束循环时间为0时表示无结束循环时间限制;所述循环次数为0时表示无循环次数限制。5.一种基于HTML页面的定时队列调度系统,其特征在于:包括有创建模块,用于创建定时器队列维护方法;注册模块,用于将需要定时执行的方法注册进上述定时器队列维护方法;定时器设置模块,用于设置定时器超时对象setInterval(“time_list();”,t),其中time_list...

【专利技术属性】
技术研发人员:黄镇
申请(专利权)人:无锡天脉聚源传媒科技有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1