服务器及多层级数据的处理方法与流程

文档序号:28687295发布日期:2022-01-29 10:52阅读:131来源:国知局
1.本技术涉及显示
技术领域
:,尤其涉及一种服务器及多层级数据的处理方法。
背景技术
::2.为方便用户按照类别查找自己喜欢的媒资,现如今,智能电视的媒资推荐页面通常设置有多个粗分类型的导航栏控件如“电视剧”控件、“电影”控件、“少儿”控件、“教育”控件等等,每个导航栏控件可对应多个细分类型的侧边栏控件,如“一年级”控件、“二年级”控件等等,每个侧边栏控件可分别对应着一些用于展示媒资的侧边栏控件,用户可通过切换导航栏控件和侧边栏控件以切换自己想要观看的媒资的类型。3.为生成上述具有导航栏控件、侧边栏控件以及栏目控件的媒资推荐页面,需要针对每个栏目控件分别选取一些媒资,然后将这些媒资的媒资信添加至上述导航栏控件、侧边栏控件以及栏目资控件中,生成多张数据表,然后将这多张数据表整合成一张数据表,进而生成媒资推荐页面的界面数据。相关技术中,在将多张数据表进行整合时,通常是建立一个任务队列,将每张数据表作为一个任务逐一进行处理,然而,在任务队列包含的任务的数量较多时,这将导致任务队列的处理需要耗费较长时间,使得媒资推荐页面的生成效率较低。技术实现要素:4.为解决媒资推荐页面生成效率低的技术问题,本技术提供了一种服务器及多层级数据的处理方法。5.第一方面,本技术提供了一种服务器,该服务器被配置为:6.扫描任务队列,将未被执行的一个任务确定为目标任务,其中,所述任务队列包括多个任务,多个任务的数据之间设置有层级关系;7.若所述目标任务不是最低层级的任务,执行所述目标任务,在所述目标任务执行完后,将所述目标任务和所述目标任务关联的层级低于所述目标任务的任务从所述任务队列中移除或标记为已执行;8.若所述目标任务是最低层级的任务,执行所述目标任务,在所述目标任务执行完后,将所述目标任务从所述任务队列中移除或标记为已执行;9.按照对所述目标任务的处理方法继续处理所述任务队列中未被执行的任务;10.当所述任务队列不存在未被执行的任务时,根据全部任务的执行结果生成所述任务队列对应界面的界面数据。11.在一些实施例中,所述服务器还被配置为:12.若所述目标任务不是最低层级的任务,在所述目标任务执行的过程中,根据所述目标任务的层级关系,在所述任务队列中获取所述目标任务关联的层级低于所述目标任务的任务。13.在一些实施例中,在所述任务队列中获取所述目标任务关联的层级低于所述目标任务的任务,包括:14.在所述任务队列中获取入队时间早于所述目标任务开始执行的时间,且所述目标任务关联的层级低于所述目标任务的任务。15.在一些实施例中,在所述任务队列中获取所述所述目标任务关联的层级低于所述目标任务的任务,包括:16.若所述目标任务为导航栏控件对应的任务,在所述任务队列中获取所述导航栏控件关联的侧边栏控件对应的任务以及所述侧边栏控件关联的栏目控件对应的任务;17.若所述目标任务为侧边栏控件对应的任务,在所述任务队列中获取所述目标任务,且所述侧边栏控件关联的栏目控件对应的任务。18.在一些实施例中,将一个未被执行的任务确定为目标任务,包括:19.将最晚入队且未被执行的任务确定为目标任务。20.在一些实施例中,按照对所述目标任务的处理方法继续处理所述任务队列中未被执行的任务,包括:21.按照对所述目标任务的处理方法以及入队时间由晚到早的顺序继续处理所述任务队列中入队早于所述目标任务的任务。22.第二方面,本技术提供了一种多层级数据的处理方法,该方法包括:23.扫描任务队列,将未被执行的一个任务确定为目标任务,其中,所述任务队列包括多个任务,多个任务的数据之间设置有层级关系;24.若所述目标任务不是最低层级的任务,执行所述目标任务,在所述目标任务执行完后,将所述目标任务和所述目标任务关联的层级低于所述目标任务的任务从所述任务队列中移除或标记为已执行;25.若所述目标任务是最低层级的任务,执行所述目标任务,在所述目标任务执行完后,将所述目标任务从所述任务队列中移除或标记为已执行;26.按照对所述目标任务的处理方法继续处理所述任务队列中未被执行的任务;27.当所述任务队列不存在未被执行的任务时,根据全部任务的执行结果生成所述任务队列对应界面的界面数据。28.在一些实施例中,所述方法还包括:29.若所述目标任务不是最低层级的任务,在所述目标任务执行的过程中,根据所述目标任务的层级关系,在所述任务队列中获取所述目标任务关联的层级低于所述目标任务的任务。30.本技术实施例提供的服务器及多层级数据的处理方法的有益效果是:31.本技术实施例通过在执行任务队列中设置有层级关系的任务时,自动关联与当前任务具有层级关系的任务,使得在执行完一个任务后,可将关联的多个任务一并标记为已执行或从任务队列中移除,提高了任务队列中任务的执行速度,大幅提升了媒资推荐界面的生成效率。附图说明32.为了更清楚地说明本技术的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。33.图1示出了根据一些实施例的显示设备与控制装置之间操作场景;34.图2示出了根据一些实施例的媒资推荐页面的示意图;35.图3示出了根据一些实施例的媒资推荐页面的示意图;36.图4示出了根据一些实施例的媒资推荐页面的生成流程示意图;37.图5中示例性示出了根据一些实施例的多层级数据的处理方法的流程示意图;38.图6中示例性示出了根据一些实施例的任务队列的示意图;39.图7中示例性示出了根据一些实施例的多层级数据的处理方法的流程示意图;40.图8中示例性示出了根据一些实施例的任务队列的任务处理示意图;41.图9中示例性示出了根据一些实施例的任务队列的任务处理示意图;42.图10中示例性示出了根据一些实施例的任务队列的任务处理示意图;43.图11中示例性示出了根据一些实施例的任务队列的任务处理示意图。具体实施方式44.为使本技术的目的和实施方式更加清楚,下面将结合本技术示例性实施例中的附图,对本技术示例性实施方式进行清楚、完整地描述,显然,描述的示例性实施例仅是本技术一部分实施例,而不是全部的实施例。45.需要说明的是,本技术中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本技术的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。46.本技术中说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换。47.术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的所有组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。48.本技术实施方式提供的显示设备可以具有多种实施形式,例如,可以是电视、智能电视、激光投影设备、显示器(monitor)、电子白板(electronicbulletinboard)、电子桌面(electronictable)等。图1为本技术的显示设备的一种具体实施方式。49.图1为根据实施例中显示设备与控制装置之间操作场景的示意图。如图1所示,用户可通过智能设备300或控制装置100操作显示设备200。50.在一些实施例中,控制装置100可以是遥控器,遥控器和显示设备的通信包括红外协议通信或蓝牙协议通信,及其他短距离通信方式,通过无线或有线方式来控制显示设备200。用户可以通过遥控器上按键、语音输入、控制面板输入等输入用户指令,来控制显示设备200。51.在一些实施例中,也可以使用智能设备300(如移动终端、平板电脑、计算机、笔记本电脑等)以控制显示设备200。例如,使用在智能设备上运行的应用程序控制显示设备200。52.在一些实施例中,显示设备可以不使用上述的智能设备或控制设备接收指令,而是通过触摸或者手势等接收用户的控制。53.在一些实施例中,显示设备200还可以采用除了控制装置100和智能设备300之外的方式进行控制,例如,可以通过显示设备200设备内部配置的获取语音指令的模块直接接收用户的语音指令控制,也可以通过显示设备200设备外部设置的语音控制设备来接收用户的语音指令控制。54.在一些实施例中,显示设备200还与服务器400进行数据通信。可允许显示设备200通过局域网(lan)、无线局域网(wlan)和其他网络进行通信连接。服务器400可以向显示设备200提供各种内容和互动。服务器400可以是一个集群,也可以是多个集群,可以包括一类或多类服务器。55.在一些实施例中,显示设备启动后可以直接进入预置的视频点播程序的界面。56.在一些实施例中,显示设备启动后可以直接进入上次选择的信号源的显示界面,或者信号源选择界面,其中信号源可以是预置的视频点播程序,还可以是hdmi接口,直播电视接口等中的至少一种,用户选择不同的信号源后,显示器可以显示从不同信号源获得的内容并进行展示。57.在一些实施例中,视频点播程序的界面可以如图2中所示,至少包括导航栏510和位于导航栏510下方的内容显示区。58.导航栏510可设置有多个导航栏控件。图2中包括了如下导航栏控件:“vip”控件、“足迹”控件、“新闻”控件、“教育”控件、“影视”控件、“少儿”控件、“购物”控件、“游戏”控件和“应用”控件。59.内容显示区可显示导航栏中被选中的导航栏控件对应的内容,例如,内容显示区多个媒资控件,媒资控件可展示一个媒资的媒资海报和媒资标题。60.在一些实施例中,内容显示区可包括侧边栏520以及位于侧边栏520一侧的控件。61.参见图2,侧边栏520可设置有多个侧边栏控件。图2中包括了如下侧边栏控件:“精选”控件、“知识”控件、“互动课堂”控件、“定制”控件、“健身”控件、“一年级”控件和“二年级”控件。62.位于侧边栏520一侧的控件可包括栏目控件,每个栏目控件可包括一个控件或多个控件,如媒资控件、广告控件等控件。图2中包括了如下栏目控件:栏目1控件,包括两个媒资控件,分别为“媒资1”控件和“媒资2”控件;栏目2控件,包括四个媒资控件,分别为“媒资3”控件、“媒资4”控件、“媒资5”控件和“媒资6”控件;栏目3控件,包括一个广告控件,为“广告1”控件。63.在一些实施例中,位于侧边栏520一侧的栏目控件还可包括“历史记录”、“我的收藏”和“开通vip”等操作控件。64.在一些实施例中,图2所示的界面,导航栏控件、侧边栏控件和栏目控件之间设置有如下的层级关系:导航栏控件——侧边栏控件——栏目控件,即导航栏控件下级有多个侧边栏控件,每个侧边栏控件下级有多个栏目控件。根据该层级关系,内容显示区的侧边栏控件会随导航栏中被选中的导航栏控件变化而变化,内容显示区的控件会随着导航栏中被选中的导航栏控件变化而变化,也会随着侧边栏中被选中侧边栏控件的变化而变化。65.在一些实施例中,图2所示的界面可称为媒资推荐界面,该界面的界面数据由服务器预先生成,然后在显示设备进入视频点播程序后下发至显示设备进行显示。66.图2中包括了大量控件,生成图2所示的界面的方法较为复杂,为方便对服务器生成媒资推荐页面的方法进行说明,图3示出了根据一些实施例的媒资推荐页面的示意图。参见图3,一种媒资推荐页面中,导航栏只设置有“教育”控件和“电影”控件,“教育”控件对应的侧边栏只设置有“一年级”控件和“二年级”控件,其中,“一年级”控件对应了三个栏目控件,分别包括“媒资7”控件、“媒资8”控件和“广告2”控件,“二年级”控件对应的媒资控件包括“媒资9”控件(未示出),“电影”控件对应的侧边栏设置有“免费”控件(未示出),“免费”控件对应的栏目控件的数量为0。67.下面对服务器生成图3所示的界面的方法进行介绍,服务器生成图2所示的界面或其他具有层级关系的界面的方法可参考该方法做适应性调整。68.参见图4,为根据一些实施例的媒资推荐页面的生成流程示意图。如图4所示,对于一个媒资推荐界面,可由运营人员编排栏目,其中,每个栏目对应一个栏目控件,对于不同的栏目,可由不同的运营人员来编排,以提高编排效率,编排栏目可指编排栏目的内容,例如,栏目控件对应的媒资或广告的id。69.运营人员编排好栏目后,可分别将每个栏目写到数据表中,得到数据表1、数据表2、…数据表n这n张数据表,n大于或等于2。在一些实施例中,运营人员可根据编排栏目时确定的每个栏目对应媒资或广告的id,在数据库中获取该媒资或广告的部分信息或全部信息,如媒资海报、媒资标题、媒资播放地址等信息。需要说明的是,数据表1、数据表2、…数据表n为内容上有关联的表,例如,数据表1和数据表2均是“一年级”控件对应的数据表,这两个数据表具有关联。70.每张数据表中包含一个栏目的全部信息,如对应媒资的id、播放地址、媒资海报、媒资标题、侧边栏控件标识、导航栏控件标识等信息,其中,侧边栏控件标识为该栏目对应的侧边栏控件的标识,导航栏控件标识为该栏目对应的侧边栏控件的标识。71.虽然一些数据表在内容上具有关联,然而,这些数据表可能是分开运营的,各数据表在形式上没有关联,为了便于对这些数据表中的数据进行管理,需要对这些数据表进行汇总处理。72.在生成多张数据表后,可生成并发布任务,在任务执行后,可实现将多张数据表的数据整合到一张数据表中,得到单一结构的数据表,可称为数据汇总表。其中,单一结构是指该数据汇总表为一张表,而不是多张表。73.在图4中获得数据汇总表后,可将数据汇总表与媒资推荐页面的编排数据进行整合,得到媒资推荐页面的界面数据,将该界面数据下发至显示设备后,显示设备可根据该界面数据生成媒资推荐页面。74.在一些实施例中,编排数据可包括媒资推荐页面上的各类控件的大小、位置、控件类型和控件标识,其中,控件类型可包括导航栏控件类型、侧边栏控件类型和媒资控件类型等控件类型,控件标识为控件的身份标识,可为控件id。75.在一些实施例中,图4得到的数据汇总表可称为媒资推荐页面的内容数据,该内容数据可包括媒资推荐页面上的各类控件的显示数据、响应数据和控件标识,其中,显示数据可包括图片和标题,响应数据可包括控件被触发后跳转到相应界面的界面数据或界面网址。76.在一些实施例中,每个控件标识均可设置有层级关系,例如,一个层级关系为:控件标识1——控件标识2——控件标识3,表示控件标识2对应控件的上级控件为控件标识1对应控件,控件标识2对应控件的下级控件为控件标识3对应控件。该层级关系可以预先存储在服务器上。77.可见,在发布任务后,任务执行的效率对媒资推荐页面的界面数据的生成效率有重要影响,为提高媒资推荐页面的界面数据的生成效率,本技术实施例提供了一种多层级数据的处理方法。78.参见图5,该多层级数据的处理方法可包括如下步骤:79.步骤s101:扫描任务队列,将未被执行的一个任务确定为目标任务,其中,所述任务队列包括多个任务,多个任务的数据之间设置有层级关系。80.在一些实施例中,任务队列可根据图4的多个数据表生成。根据数据表中的每个控件标识可依次生成一个任务,形成一个任务队列。81.在一些实施例中,对于一个任务队列,整体按照“先进先出”的规则处理队列中的任务,其中,“整体”是指在处理一个未被执行的任务时或处理后,不再处理入队在任务之前的关联的任务,即整个任务队列中,除了不被处理的任务,被处理的任务的顺序是按照“先进先出”的规则依次推进的。82.在一些实施例中,扫描任务队列是指从队伍的开头扫描未被执行的任务,在扫描到一个未被执行的目标任务后,停止扫描,将该任务确认为目标任务,执行该任务。在执行该任务或执行后,可继续扫描任务队列。83.在一些实施例中,扫描任务队列也可为一次性扫描任务队列的全部未被执行的任务,在一个任务执行后,可再次扫描任务队列。84.在一些实施例中,任务队列中的多个任务之间设置有层级关系,该层级关系可由控件之间的层级关系确定。例如,对于一个层级关系:导航栏控件1——侧边栏控件1——栏目控件1,这三个控件对应的任务依次为导航任务1、侧边栏任务1、栏目任务1,则这三个任务的层级关系为:导航任务1——侧边栏任务1——栏目任务1;对于一个层级关系:导航栏控件10——侧边栏控件10——栏目控件10,这三个控件对应的任务依次为导航任务10、侧边栏任务10、栏目任务10,则这三个任务的层级关系为:导航任务10——侧边栏任务10——栏目任务10。其中,导航任务1是侧边栏任务1的上一层级的任务,栏目任务1是侧边栏任务1的下一层级的任务,导航任务10是侧边栏任务10的上一层级的任务,栏目任务10是侧边栏任务10的下一层级的任务。85.步骤s102:若所述目标任务不是最低层级的任务,执行所述目标任务,在所述目标任务执行完后,将所述目标任务和所述目标任务关联的层级低于所述目标任务的任务从所述任务队列中移除或标记为已执行。86.在一些实施例中,在获取到任务队列中的一个目标任务后,可从该任务的信息中获取到控件id和控件类型。该控件类型可能为导航栏控件、侧边栏控件或栏目控件。87.在一些实施例中,服务器被配置为在开始执行一个目标任务时,或执行后,自动扫描该目标任务在目标队列中的下一层级的的任务。若扫描到下一层级的任务,则继续扫描下一层级任务的下一层级的任务。88.在一些实施例中,一个层级的任务默认包含了下一层级的任务内容,这使得一个任务被执行时,默认将其下一级任务的内容也执行一遍,例如,若目标任务为任务1,该任务1在任务队列中入队顺序在任务1之后的下一层级的任务包括任务2,任务2在任务队列中的下一层级的任务包括任务3,则任务1在执行完后,则任务2和任务3也被执行完毕,因此,可将任务2和任务3在任务队列中移除或标记为已执行,其中,该移除的动作和标记的动作可设置在任务1的执行过程中或执行完成后,若设置在执行过程中,可提高任务队列的执行效率,当然,这需要服务器的计算能力支持。89.在一些实施例中,服务器可不存储任务之间的层级关系,只存储控件之间的层级关系,可根据控件之间的层级关系确定任务之间的层级关系。,服务器可按照控件的id在服务器存储的层级关系中搜索层级在该控件之下的控件。其中,按照控件之间的层级关系,第一级控件指导航栏控件,第二级控件为侧边栏控件,第三级控件为栏目控件。根据该层级关系,获取目标任务对应控件的下一层级控件,进而在任务队列中得到这些获得的控件对应的任务。当然,若有更多层级的控件,如存在第四级控件,也获取该第四级控件,即获取关联的全部层级的控件对应的任务。90.在一些实施例中,也可直接按照任一等级的控件id在服务器存储的层级关系中搜索层级在该控件之上或之下的控件。因此,可根据服务器中存储的层级关系,获取该控件id对应的全部层级的控件,进而在任务队列中得到这些获得的控件对应的任务。91.在一些实施例中,执行一个任务是指将该任务对应的数据按照服务器中存储的层级关系分别进行存储。92.在一些实施例中,由于任务的触发是按照运营模块编排的顺序产生的,因此在任务队列中有可能产生处于同一业务单元的不同层级的功能所对应的任务,但是由于功能本身的包含与被包含的特性(例如,教育导航包括一年级侧边栏,一年级侧边栏包括一年级侧边栏下栏目1),在队列中的同一时刻的任务中,同一业务中的一功能模块的上层任务中包含了该功能模块在业务中的下层任务的任务逻辑,例如:在教育导航这一功能模块的上层任务逻辑中,包含了:一年级侧边栏任务的任务逻辑,二年级侧边栏任务的任务逻辑,以及其他任务逻辑。一年级侧边栏这一功能模块的上层任务逻辑中,包含了:一年级侧边栏下栏目1任务的任务逻辑、一年级侧边栏下栏目2任务的任务逻辑,一年级侧边栏下栏目3任务的任务逻辑,以及其他任务逻辑。二年级侧边栏这一功能模块的上层任务逻辑中,包含了:二年级侧边栏下栏目1任务的任务逻辑、以及其他任务逻辑。电影导航这一功能模块的上层任务逻辑中,包含了:免费侧边栏任务的任务逻辑、以及其他任务逻辑。只要上层任务逻辑执行完成,下层任务逻辑在上层任务逻辑执行过程中也进行了对应的执行处理,无需再次执行。93.步骤s103:若所述目标任务是最低层级的任务,执行所述目标任务,在所述目标任务执行完后,将所述目标任务从所述任务队列中移除或标记为已执行。94.在一些实施例中,若目标队伍是最低层级的任务,则该任务在任务队列中不会有下一层级的任务,因此,在所述目标任务执行完后,可只将所述目标任务从所述任务队列中移除或标记为已执行。95.步骤s104:按照对所述目标任务的处理方法继续处理所述任务队列中未被执行的任务。96.在一些实施例中,在执行完一个目标任务后,继续扫描所述任务队列。97.在一些实施例中,在执行完第一个任务,并将关联的全部层级低于该任务的任务在任务队列中移除或标记为已完成后,可扫描任务队列中最晚入队的未被执行的任务。98.步骤s105:当所述任务队列不存在未被执行的任务时,根据全部任务的执行结果生成所述任务队列对应界面的界面数据。99.在一些实施例中,当所述任务队列不存在未被执行的任务时,根据全部任务的执行结果生成所述任务队列对应界面的界面数据时可获取全部任务的执行结果,将其与媒资推荐页面的编排数据进行整合,从而生成任务队列对应界面的界面数据。100.由图5可见,本技术实施例提供的多层级数据的处理方法,通过在一个任务队列中一次就选取多个相关联的任务,可加快任务队列的处理速度。101.为对媒资推荐页面的多层级数据的处理方法做进一步描述,下面以一个具体的任务队列为例,对本技术实施例提供的多层级数据的处理方法做进一步介绍。102.参见图6,一个对应图3的任务队列中包含了如下九个任务:“教育导航”任务、“一年级侧边栏”任务、“二年级侧边栏”任务、“电影导航”任务、“一年级侧边栏下栏目1”任务、“一年级侧边栏下栏目2”任务、“一年级侧边栏下栏目3”任务、二年级侧边栏下栏目1”任务和“免费侧边栏”任务。其中,该任务队列中第一个入队的任务为“教育导航”任务,最后一个入队的任务为“免费侧边栏”任务。103.需要说明的是,实际实施中,在任务队列执行的过程中,可能会有新的任务入队。例如,在执行对应图2的任务队列时,任务队列初始的任务如图6所示,在任务队列执行的过程中,有新的任务进入了任务队列,该新的任务可能是任务队列中已执行任务的下一层级任务,如“二年级侧边栏”任务的下一层级任务,对应的是“媒资9”控件,也可能是新的导航任务的下一层级任务,如“少儿导航”任务的下一层级任务,其中,“少儿导航”任务对应的是图2中导航栏的“少儿”控件。104.在一些实施例中,队列中的任务可用控件标识-控件类型来表示。图6中的任务可依次为:控件id1-控件类型a,控件id2-控件类型b,控件id3-控件类型b,控件id4-控件类型a,控件id5-控件类型c,控件id6-控件类型b,控件id7-控件类型c,控件id8-控件类型c,控件id9-控件类型b。105.其中,控件类型a表示导航栏控件、控件类型b表示侧边栏控件,控件类型c表示栏目控件。106.控件id1对应的控件为导航栏的“教育”控件,控件id2对应的控件为“一年级”控件,控件id3对应的控件为“二年级”控件,控件id4对应的控件为导航栏的“电影”控件,控件id5对应的控件为“媒资7”控件,控件id6对应的控件为“媒资8”控件,控件id7对应的控件为“广告”控件,控件id8对应的控件为“媒资9”控件,控件id9对应的控件为“免费”控件。107.针对对6所示的任务队列,一种多层级数据的处理方法可参见图7,包括如下步骤:108.步骤s201:扫描任务队列。109.在一些实施例中,任务队列中的每个任务都设置有状态标识,该状态标识有两种形态,一种表示已执行,另一种表示未执行。在刚开始处理任务队列时,任务队列中的每个任务的状态标识均为未执行。110.步骤s202:取出任务队列中的第一个任务。111.在一些实施例中,第一个任务指第一个进入任务队列的任务。对于图6所示的队列,第一个任务为“教育导航”任务,该任务即需要执行的目标任务。112.步骤s203:执行第一个任务。113.在一些实施例中,在取出目标任务后,可记录目标任务执行的开始时间,并在该时间启动执行目标任务。在一些实施例中,也可在取出目标任务后,直接开始执行,并记录开始执行的时间。参见图8,执行的第一个任务为“教育导航”任务。114.在一些实施例中,一个目标任务的执行过程是:115.若该目标任务不是最低层级的任务,根据该目标任务对应的数据表,将该目标任务对应控件的数据以及下一层级的控件的数据填写到一个空白的数据表中,在任务队列中的全部任务都被处理完毕后,该空白的数据表成为数据汇总表,或者,将该目标任务对应控件的数据以及下一层级的控件的数据填写到一个旧数据汇总表中,在任务队列中的全部任务都被处理完毕后,该旧数据汇总表成为新的数据汇总表。116.若下一层级的控件存在下一层级的控件,将下一层级的控件的下一层级的控件的数据进行更新,以此类推。若该目标任务是最低层级的任务,仅根据该目标任务对应的数据表,将该目标任务对应控件的数据进行更新。117.例如,对于“教育导航”任务,数据表中包含一个控件名称:“课程”,则将该控件名称写入数据汇总表中,实现控件名称由“教育”到“课程”的更新;根据下一层级的控件对应的数据表,将该下一层级控件的数据进行更新,例如,对于“教育”控件,将“一年级侧边栏”控件、“二年级侧边栏”控件、“一年级侧边栏下栏目1”控件、“一年级侧边栏下栏目2”控件、“一年级侧边栏下栏目3”控件、“二年级侧边栏下栏目1”控件的数据更新为图4中各相应数据表中的数据。118.对于图6所示的队列,“教育导航”任务执行完毕后被设置为灰底,表示已完成对该任务的处理,其他任务为白底,表示未处理,其中,对一个任务的处理包括执行,然后标记为完成,或不执行,直接标记为完成。119.步骤s204:解析第一个任务下的侧边栏数据列表。120.在一些实施例中,侧边栏列表可根据层级关系获得。其中,每个导航栏控件对应的侧边栏控件这一层级关系以侧边栏数据列表的方式进行存储,当然,也可以其他形式进行存储,例如,以树状图的方式进行存储。121.步骤s205:根据侧边栏数据列表查询任务队列。122.在一些实施例中,在得到导航栏控件对应的侧边栏数据列表后,可从该侧边栏数据列表中得到多个侧边栏控件的控件id,可在任务队列中查找对应这些控件id的侧边栏任务。123.步骤s206:获取入队时间在第一个任务执行开始时间之前,且层级为第一个任务下一层级的侧边栏任务。124.在一些实施例中,图6中,在第一个任务执行开始执行时,已入队的“教育导航”任务对应的侧边栏任务包括:“一年级侧边栏”任务和“二年级侧边栏”任务。125.步骤s207:解析每个侧边栏下的栏目数据列表。126.在一些实施例中,在步骤s204得到侧边栏数据列表后,可根据层级关系,得到每个侧边栏控件对应的栏目控件,其中,每个侧边栏控件对应的栏目控件以栏目数据列表的方式进行存储。127.步骤s208:根据栏目数据列表查询任务队列。128.在一些实施例中,在得到侧边栏控件对应的栏目数据列表后,可从该栏目数据列表中得到多个栏目控件的控件id,可在任务队列中查找对应这些控件id的栏目任务。129.步骤s209:获取入队时间在第一个任务的执行开始时间之前,且层级为查询到的侧边栏任务下一层级的栏目任务。130.在一些实施例中,图6中,在第一个任务开始执行时,已入队的“一年级侧边栏”任务对应的栏目任务包括:“一年级侧边栏下栏目1”任务、“一年级侧边栏下栏目2”任务和“一年级侧边栏下栏目3”任务。已入队的“二年级侧边栏”任务对应的栏目任务包括:“二年级侧边栏下栏目1”任务。131.步骤s210:将获取到的侧边栏任务和栏目任务在任务队列中标记为完成。132.在一些实施例中,可将上一步骤查询到的侧边栏任务和栏目任务在任务队列中标记为完成,标记方法可为将状态标识设置为已执行,具体方法可为将任务在任务队列中设置为底色灰色,而状态标识为未执行的任务在任务队列中的底色为白色或默认主题颜色,如蓝色。133.参见图9,“教育导航”任务对应的层级低于该任务,且入队在该任务的开始执行前的任务有:“一年级侧边栏”、“一年级侧边栏下栏目1”任务、“一年级侧边栏下栏目2”任务、“一年级侧边栏下栏目3”任务、“二年级侧边栏”任务、”二年级侧边栏下栏目1”任务,这些任务均被设置为底色为灰色,表示已完成处理。134.在一些实施例中,也可不设置状态标识,直接将任务从任务队列中移除。135.步骤s211:继续扫描任务队列,从下一个未完成的任务开始执行。136.根据上述层级关系的处理方法,在一些实施例中,对于图6所示的任务队列,在执行第一个任务,即“教育导航”任务时,可自动关联图9所示的“一年级侧边栏任务”、“二年级侧边栏任务”、“一年级侧边栏下栏目1”任务、“一年级侧边栏下栏目2”任务、一年级侧边栏下栏目3”任务、“二年级侧边栏下栏目1”任务,将这些任务标记为完成。继续扫描该任务队列,参见图10,可扫描到“电影导航”任务,在执行该任务时,该任务在执行完毕后被标记为灰底,扫描该任务队列中关联的任务,得到“免费侧边栏”任务。将该“免费侧边栏”任务标记为完成,参见图11,此时,任务队列中的全部任务被执行完毕。137.在一些实施例中,对于图6所示的任务队列,在执行完“教育”控件对应的任务后,,以及“电影”控件对应的任务以及关联的任务后,则任务队列中的其余任务自动被标记为完成,只需要执行两次任务,就可完成对整个任务队列的任务处理。完成任务处理后,可跟据得到的数据汇总表生成媒资推荐页面的界面数据。138.可见,对于图6所示的任务队列,按照本技术实施例提供的多层级数据的处理方法,只需要进行两次任务处理,即可将任务队列中的任务全部执行完毕,假设执行一次任务的时间为一分钟,则只需要两分钟即可将任务队列中的任务执行完毕,若按照一次执行一个任务的方法,则需要九分钟才能将任务队列中的任务执行完毕,可见,本技术显著提高了任务队列的执行效率,进而提高了媒资推荐界面的生成效率。139.由上述实施例可见,本技术实施例通过在执行任务队列中设置有层级关系的任务时,自动关联与当前任务具有层级关系的任务,使得在执行完一个任务后,可将关联的多个任务一并标记为已执行或从任务队列中移除,提高了任务队列中任务的执行速度,大幅提升了媒资推荐界面的生成效率。140.由于以上实施方式均是在其他方式之上引用结合进行说明,不同实施例之间均具有相同的部分,本说明书中各个实施例之间相同、相似的部分互相参见即可。在此不再详细阐述。141.需要说明的是,在本说明书中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或暗示这些实体或操作之间存在任何这种实际的关系或顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的电路结构、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种电路结构、物品或者设备所固有的要素。在没有更多限制的情况下,有语句“包括一个……”限定的要素,并不排除在包括要素的电路结构、物品或者设备中还存在另外的相同要素。142.本领域技术人员在考虑说明书及实践这里发明的公开后,将容易想到本技术的其他实施方案。本技术旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本
技术领域
:中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性地,本技术的真正范围和精神由权利要求的内容指出。143.以上的本技术实施方式并不构成对本技术保护范围的限定。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1