一种定时器节点的管理方法和系统技术方案

技术编号:8562849 阅读:124 留言:0更新日期:2013-04-11 04:28
本发明专利技术公开了一种定时器节点的管理方法和系统,该定时器节点的管理方法包括:创建一个N*M项的单向链表;将特定时间点或段的定时器节点添加到单向链表的相应小组的相应项中,同一小组两相邻项的定时器节点的间隔相同;第i小组的定时器节点的间隔为Ni,且i=1、2、…、M;对于i=1,在判断指针所指向的定时器节点的时间早于当前时间时,执行指针所指向的定时器;对于i=2、…、M:在前一小组的指针不是指向最后一项时,该指针指向下一项;在前一小组的指针指向最后一项时,使用第i小组的指针所指向的定时器节点填充该前一小组,且该前一小组的指针重新指向第一项,该第i小组的指针指向下一项。实施本发明专利技术的技术方案,节省时间、提高了效率。

【技术实现步骤摘要】

本专利技术涉及定时器领域,尤其涉及一种定时器节点的管理方法和系统
技术介绍
定时器机制在通信中有广泛的应用,例如,通过无线方式用手机(简称client)浏览新浪网的过程手机将请求新浪网页的信息发送给无线热点(简称ap),无线热点将该信息转发给因特网中的新浪服务器(简称server)。新浪服务器发回的手机所请求的页面会被无线热点接收到,无线热点再将页面发送给手机。在这个过程中无线热点起到一个中转站的作用。由于中国移动在全国各地都铺设了无线热点,所以我们可以随时随地的通过无线技术来上网。然而,管理这些数量众多的无线热点却成了问题,由此诞生了无线控制器(简称ac)。无线控制器的作用就是管理无线热点,比如关闭/启动某个无线热点、将某些无线热点的发射功率调高,增强信号。无线控制器管理无线热点使用了 CAPWAP协议(就是说无线控制器用CAPWAP协议给无线热点发送信息,无线热点也用CAPWAP协议给无线控制器回复信息),而CAPWAP协议又是基于UDP协议 的。UDP协议是一个无连接的协议,不能保证信息一定能到达对方,这就要求应用层的软件在信息丢失后重发信息。信息丢失的判断方式就是发送信息一段时间后没有收到对方的回复,这就涉及到了定时器机制的运用。目前,定时器节点管理有两种方式一、将所有定时器节点组织在一个排序的链表中;二、根据定时器到期时间用红黑树组织起来。但是,使用链表组织定时器节点的方式效率很低,因为在每次运行定时器时需要扫描一个长的链表,浪费时间而且维护一个排序的链表效率也不高,插入操作很费时;使用红黑树组织定时器节点效率也不高,因为每次添加或删除都要对整个树进行调整很浪费时间。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术的上述浪费时间、效率不高的缺陷,提供一种定时器节点的管理方法和系统,节省时间、提高了效率。本专利技术解决其技术问题所采用的技术方案是构造一种定时器节点的管理方法,包括A.创建一个N*M项的单向链表,其中,M为小组数,N为每个小组的项数,M、N为大于I的自然数,且每一小组对应一指针;B.将特定时间点或段的定时器节点添加到单向链表的相应小组的相应项中,其中,同一小组内两相邻项的定时器节点之间的时间间隔相同,且第一小组内的两相邻项的定时器节点之间的时间间隔为时间精度;第i小组的最大定时器节点与最小定时器节点之间的时间间隔为#,且i=l、2、…、M;C.在运行定时器时,对于i = l,在判断第i小组的指针所指向的定时器节点的时间早于当前时间时,执行第i小组的指针所指向的定时器;对于i=2、…、M :在第i小组的前一小组的指针不是指向该前一小组的最后一项时,该前一小组的指针指向该前一小组的下一项;在第i小组的前一小组的指针指向该前一小组的最后一项时,使用第i小组的指针所指向的定时器节点填充该前一小组,且该前一小组的指针重新指向该前一小组的第一项,该第i小组的指针指向该第i小组的下一项。在本专利技术所述的定时器节点的管理方法中,在所述步骤C中,对于i=l,若判断第i小组的指针所指向的定时器节点的时间不早于当前时间,则退出。本专利技术还构造一种定时器节点的管理系统,包括链表创建模块,用于创建一个N*M项的单向链表,其中,M为小组数,N为每个小组的项数,M、N为大于I的自然数,且每一小组对应一指针;添加模块,用于将特定时间点或段的定时器节点添加到单向链表的相应小组的相应项中,其中,同一小组内两相邻项的定时器节点之间的时间间隔相同,且第一小组内的两相邻项的定时器节点之间的时间间隔为时间精度;第i小组的最大定时器节点与最小定时器节点之间的时间间隔为Ni,且i=l、2、…、M;运行模块,用于在运行定时器时,对于i = l,在判断第i小组的指针所指向的定时器节点的时间早于当前时间时,执行第i小组的指针所指向的定时器;对于i=2、…、M :在第i小组的前一小组的指针不是指向该前一小组的最后一项时,该前一小组的指针指向该前一小组的下一项;在第i小组的前一小组的指针指向该前一小组的最后一项时,使用第i小组的指针所指向的定时器节点填充该前一小组,且该前一小组的指针重新指向该前一小组的第一项,该第i小组的指针指向该第i小组的下一项。`在本专利技术所述的定时器节点的管理系统中,所述运行模块,还用于对于i = l,在判断第i小组的指针所指向的定时器节点的时间不早于当前时间时,执行退出。实施本专利技术的技术方案,在执行单向链表中的定时器时,不必扫描整个单向链表的所有定时器节点,而只需循环扫描第一小组的定时器节点,只是在第一小组的定时器节点扫描完后,使用第二小组的各项逐一填充第一小组,依次类推,使用第三小组的各项逐一填充第二小组,等等。因此,大大节省了 CPU的时间,而且该单向链表在维护时效率也很高。附图说明下面将结合附图及实施例对本专利技术作进一步说明,附图中图1是本专利技术定时器节点的管理方法实施例一的流程图;图2是本专利技术所创建的单向链表实施例一的示意图;图3是本专利技术定时器节点的管理系统实施例一的逻辑图。具体实施例方式图1是本专利技术定时器节点的管理方法实施例一的流程图,该定时器节点的管理方法包括步骤A-C,下面分别说明每个步骤关于步骤A :创建一个N*M项的单向链表,其中,M为小组数,N为每个小组的项数,M、N为大于I的自然数,且每一小组对应一指针。结合图2所示的单向链表,在该实施例中,M=3, N=4。关于步骤B :将特定时间点或段的定时器节点添加到单向链表的相应小组的相应项中,其中,同一小组内两相邻项的定时器节点之间的时间间隔相同,且第一小组内的两相邻项的定时器节点之间的时间间隔为时间精度;第i小组的最大定时器节点与最小定时器节点之间的时间间隔为#,且i=l、2、…、M。在图2所示的单向链表中,假设时间精度为1,在将特定时间点(对应于第一小组)或时间段(对应于第二、三小组)的定时器节点添加到单向链表的相应小组的相应项中,具体为在第一小组中,将定时器节点为I的定时器(可以是一个,也可以是多个)插入到第一组的第I项中,将定时器节点为2的定时器插入到第一组的第2项中,将定时器节点为3的定时器插入到第一组的第3项中,将定时器节点为4的定时器插入到第一组的第4项中,这样的话,第一小组内的两相邻项的定时器节点之间的时间间隔均为时间精度。在第二小组中,将定时器节点为5-7的定时器(可以是一个,也可以是多个)插入到第二小组的第I项中,同样地,将定时器节点为8-11的定时器插入到第二小组的第2项中,将定时器节点为12-15的定时器插入到第二小组的第3项中,将定时器节点为16-17的定时器插入到第二小组的第4项中,这样的话,第二小组内的两相邻项的定时器节点之间的时间间隔相同,均为4,且第二小组的最大定时器节点(20)与最小定时器节点(5)之间的时间间隔为42,所以,第二小组的定时器节点的时间间隔(42)与第一小组的定时器节点的时间间隔(4)以指数形式增长。同样地,将定时器节点21-84的定时器按图2所示的方式添加到单向链表中,而且,第三小组内的两相邻项的定时器节点之间的时间间隔相同,均为16,且的最大定时器节点(84)与最小定时器节点(21)之间的时间间隔为43。关于步骤C :在运行定时器时,下面就第一小组和非第一小组(第一小组的后续小组)分别进本文档来自技高网
...

【技术保护点】
一种定时器节点的管理方法,其特征在于,包括:A.创建一个N*M项的单向链表,其中,M为小组数,N为每个小组的项数,M、N为大于1的自然数,且每一小组对应一指针;B.将特定时间点或段的定时器节点添加到单向链表的相应小组的相应项中,其中,同一小组内两相邻项的定时器节点之间的时间间隔相同,且第一小组内的两相邻项的定时器节点之间的时间间隔为时间精度;第i小组的最大定时器节点与最小定时器节点之间的时间间隔为Ni,且i=1、2、…、M;C.在运行定时器时,对于i=1,在判断第i小组的指针所指向的定时器节点的时间早于当前时间时,执行第i小组的指针所指向的定时器;对于i=2、…、M:在第i小组的前一小组的指针不是指向该前一小组的最后一项时,该前一小组的指针指向该前一小组的下一项;在第i小组的前一小组的指针指向该前一小组的最后一项时,使用第i小组的指针所指向的定时器节点填充该前一小组,且该前一小组的指针重新指向该前一小组的第一项,该第i小组的指针指向该第i小组的下一项。

【技术特征摘要】
1.一种定时器节点的管理方法,其特征在于,包括 A.创建一个N*M项的单向链表,其中,M为小组数,N为每个小组的项数,M、N为大于I的自然数,且每一小组对应一指针; B.将特定时间点或段的定时器节点添加到单向链表的相应小组的相应项中,其中,同一小组内两相邻项的定时器节点之间的时间间隔相同,且第一小组内的两相邻项的定时器节点之间的时间间隔为时间精度;第i小组的最大定时器节点与最小定时器节点之间的时间间隔为#,且i=l、2、…、M; C.在运行定时器时, 对于i=l,在判断第i小组的指针所指向的定时器节点的时间早于当前时间时,执行第i小组的指针所指向的定时器; 对于i=2、…、M :在第i小组的前一小组的指针不是指向该前一小组的最后一项时,该前一小组的指针指向该前一小组的下一项;在第i小组的前一小组的指针指向该前一小组的最后一项时,使用第i小组的指针所指向的定时器节点填充该前一小组,且该前一小组的指针重新指向该前一小组的第一项,该第i小组的指针指向该第i小组的下一项。2.根据权利要求1所述的定时器节点的管理方法,其特征在于,在所述步骤C中,对于i=l,若判断第i小组的指针所指向的定时器节点的时间不早于当前时间,则退出。3.一种定时器节点的管...

【专利技术属性】
技术研发人员:李小庆
申请(专利权)人:上海斐讯数据通信技术有限公司
类型:发明
国别省市:

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

1