一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

任务信息显示方法及装置与流程

2022-03-02 04:03:52 来源:中国专利 TAG:
1.本公开涉及计算机领域,尤其涉及一种任务信息显示方法及装置。
背景技术
::2.随着短视频应用程序的快速发展,用户的快速增长以及对各种用户群体包的定向任务发放需求的增长,越来越多的用户任务出现应用程序中,如出现在应用程序的赚钱页中。由于每个业务方的任务详情、细节、金币发放策略等任务信息不同,需要接入多个业务方,然后将各个业务方数据(如任务的任务信息)聚合后在任务列表页展示。3.相关技术通过串行调用方式来获取任务的任务信息,即每次拉取一个任务信息,拉取完成后,再拉取下一个,拉取完所有任务的任务信息后,将任务信息汇总,形成最后的任务列表并显示。此时的总耗费时间为多个任务的拉取时长耗时的总和。因此,当任务数量超过一定值后,耗费的时间过长,导致页面加载时间过长,引起用户的烦躁或导致用户离开该页面。技术实现要素:4.本公开提供一种任务信息显示方法及装置,以至少解决相关技术获取任务信息耗费时间长导致页面加载时间差、用户体验差的问题。5.根据本公开实施例的第一方面,提供一种任务信息显示方法,包括:确定至少一个任务;确定至少一个任务中每个任务的下游服务调用单元,其中,下游服务调用单元用于调用对应的下游服务并输出对应的任务信息,下游服务为执行获取任务信息的操作的单元;将下游服务调用单元的模式转换为并发调用模式;基于至少一个任务对应的并发调用模式下的下游服务调用单元,调用对应的下游服务,获取至少一个任务的任务信息;将至少一个任务的任务信息显示在界面上。6.可选地,下游服务调用单元中包括如下参数:输入参数、输出参数、任务名称参数、下游服务参数、默认值参数,确定至少一个任务中每个任务的下游服务调用单元,包括:针对至少一个任务中每个任务,确定下游服务调用单元针对任务的输入参数和输出参数;确定任务的任务名称参数;确定任务的下游服务参数;确定任务的默认值参数。7.可选地,基于至少一个任务对应的并发调用模式下的下游服务调用单元,调用对应的下游服务,获取至少一个任务的任务信息,包括:针对至少一个任务中每个任务,将任务的输入参数输入到对应的下游服务调用单元,调用任务的下游服务参数对应的下游服务,得到任务的任务信息。8.可选地,基于至少一个任务对应的并发调用模式下的下游服务调用单元,调用对应的下游服务,获取至少一个任务的任务信息,包括:确定并发调用的最大任务数;将至少一个任务按最大任务数进行划分,得到多个任务组;针对多个任务组中一个任务组,基于任务组中任务对应的并发调用模式下的下游服务调用单元,调用对应的下游服务,获取任务组中任务的任务信息。9.可选地,基于至少一个任务对应的并发调用模式下的下游服务调用单元,调用对应的下游服务,获取至少一个任务的任务信息,包括:设置调用时间阈值;在调用至少一个任务中一个任务的下游服务的时间超过调用时间阈值的情况下,将默认值参数作为一个任务的任务信息。10.根据本公开实施例的第二方面,提供一种任务信息显示装置,包括:任务确定单元,被配置为确定至少一个任务;确定单元,被配置为确定至少一个任务中每个任务的下游服务调用单元,其中,下游服务调用单元用于调用对应的下游服务并输出对应的任务信息,下游服务为执行获取任务信息的操作的单元;转换单元,被配置为将下游服务调用单元的模式转换为并发调用模式;任务信息获取单元,被配置为基于至少一个任务对应的并发调用模式下的下游服务调用单元,调用对应的下游服务,获取至少一个任务的任务信息;显示单元,被配置为将至少一个任务的任务信息显示在界面上。11.可选地,下游服务调用单元中包括如下参数:输入参数、输出参数、任务名称参数、下游服务参数、默认值参数,上述确定单元,还被配置为针对至少一个任务中每个任务,确定下游服务调用单元针对任务的输入参数和输出参数;确定任务的任务名称参数;确定任务的下游服务参数;确定任务的默认值参数。12.可选地,任务信息获取单元,还被配置为针对至少一个任务中每个任务,将任务的输入参数输入到对应的下游服务调用单元,调用任务的下游服务参数对应的下游服务,得到任务的任务信息。13.可选地,任务信息获取单元,还被配置为确定并发调用的最大任务数;将至少一个任务按最大任务数进行划分,得到多个任务组;针对多个任务组中一个任务组,基于任务组中任务对应的并发调用模式下的下游服务调用单元,调用对应的下游服务,获取任务组中任务的任务信息。14.可选地,任务信息获取单元,还被配置为设置调用时间阈值;在调用至少一个任务中一个任务的下游服务的时间超过调用时间阈值的情况下,将默认值参数作为一个任务的任务信息。15.根据本公开实施例的第三方面,提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行指令,以实现根据本公开的任务信息显示方法。16.根据本公开实施例的第四方面,提供了一种计算机可读存储介质,当计算机可读存储介质中的指令被至少一个处理器运行时,促使至少一个处理器执行如上根据本公开的任务信息显示方法。17.根据本公开实施例的第五方面,提供了一种计算机程序产品,包括计算机指令,计算机指令被处理器执行时实现根据本公开的任务信息显示方法。18.本公开的实施例提供的技术方案至少带来以下有益效果:19.根据本公开的任务信息显示方法及装置,将下游服务调用单元的模式转换为并发调用模式,并通过并发调用的方式来获取任务信息,再将获取的任务信息统计聚合显示在终端的界面上,降低了获取所有任务的任务信息的总时间,避免了当任务数量超过一定值后,耗费的时间过长,导致页面加载时间过长,引起用户的烦躁或导致用户离开该页面的问题。因此,本公开解决了相关技术中获取任务信息耗费时间长导致页面加载时间差、用户体验差的问题。20.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明21.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。22.图1是示出根据本公开的示例性实施例的任务信息显示方法的实施场景示意图;23.图2是根据一示例性实施例示出的一种任务信息显示方法的流程图;24.图3是根据一示例性实施例示出的一种任务信息显示方法的整理流程图;25.图4是根据一示例性实施例示出的验证结果示意图;26.图5是根据一示例性实施例示出的一种任务信息显示装置的框图;27.图6是根据本公开实施例的一种电子设备600的框图。具体实施方式28.为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。29.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。30.在此需要说明的是,在本公开中出现的“若干项之中的至少一项”均表示包含“该若干项中的任意一项”、“该若干项中的任意多项的组合”、“该若干项的全体”这三类并列的情况。例如“包括a和b之中的至少一个”即包括如下三种并列的情况:(1)包括a;(2)包括b;(3)包括a和b。又例如“执行步骤一和步骤二之中的至少一个”,即表示如下三种并列的情况:(1)执行步骤一;(2)执行步骤二;(3)执行步骤一和步骤二。31.针对上述问题,本公开提供了一种任务信息显示方法,能够降低了获取所有任务的任务信息的总时间,下面以任务包括签到任务和拍摄预定视频任务为例进行说明。32.图1是示出根据本公开的示例性实施例的任务信息显示方法的实施场景示意图,如图1所述,该实施场景包括服务器100、用户终端110和用户终端120,其中,用户终端不限于2个,包括并不限于手机、个人计算机等设备,用户终端可以安装短视频应用程序,服务器可以是一个服务器,也可以是若干个服务器组成服务器集群,还可以是云计算平台或虚拟化中心。33.用户终端110、120上的短视频应用程序确定至少一个任务,任务包括但不限于签到任务和拍摄预定视频任务,用户终端110、120将签到任务和拍摄预定视频任务发送给服务100,服务器100确定签到任务和拍摄预定视频任务的下游服务调用单元,其中,下游服务调用单元用于调用对应的下游服务并输出对应的任务信息,下游服务为执行获取任务信息的操作的单元,然后,将确定的下游服务调用单元的模式转换为并发调用模式;基于签到任务和拍摄预定视频任务对应的并发调用模式下的下游服务调用单元,调用对应的下游服务,获取签到任务和拍摄预定视频任务的任务信息,将签到任务和拍摄预定视频任务的任务信息显示在界面上。34.下面,将参照图2至图5详细描述根据本公开的示例性实施例的任务信息显示方法及装置。35.图2是根据一示例性实施例示出的一种任务信息显示方法的流程图,如图2所示,任务信息显示方法包括以下步骤:36.在步骤s201中,确定至少一个任务。该任务可以是签到任务、拍摄预定视频任务,本公开对此并不进行限定。37.在步骤s202中,确定至少一个任务中每个任务的下游服务调用单元,其中,下游服务调用单元用于调用对应的下游服务并输出对应的任务信息,下游服务为执行获取任务信息的操作的单元。38.在步骤s203中,将下游服务调用单元的模式转换为并发调用模式。需要说明的是,并发调用(concurrency)指在同一时刻只能有一条指令执行,但多个进程指令被快速的轮换执行,使得在宏观上具有多个进程同时执行的效果,但在微观上并不是同时执行的,只是把时间分成若干段,使多个进程快速交替的执行。例如,可以通过completablefuture将下游服务调用单元转变为并发调用模式。根据本实施例,可以方便快速的获取任务信息。39.根据本公开的示例性实施例,下游服务调用单元中包括如下参数:输入参数、输出参数、任务名称参数、下游服务参数、默认值参数,确定至少一个任务中每个任务的下游服务调用单元,包括:针对至少一个任务中每个任务,确定下游服务调用单元针对任务的输入参数和输出参数;确定任务的任务名称参数;确定任务的下游服务参数;确定任务的默认值参数。根据本实施例,下游服务调用单元可以通用,后续只要替换相应的参数,其他类似的业务也可以快速接入。40.例如,可以抽象设计一个通用的下游服务调用结构(即上述下游服务调用单元),具体可以如下程序所示,该结构输入为输入参数req,输出为输出参数resp。针对任意一个任务的下游服务的下游服务调用结构都是输入一个请求(req),输出相应的任务信息(resp),如任务详情。该下游服务调用结构需要支持请求的输入,还支持默认参数值,用于超时后的降级,即下游服务超过一定的时长仍未返回任务信息,则直接输出默认参数值,另外,还支持指定具体调用的方法servicecall,支持指定方法所在的类。下游服务调用结构可以如下:[0041][0042]又例如,在确定下游服务调用单元后,可以将上述至少一个任务的抽象的下游服务调用单元(即model列表)转换成java的异步completablefuture,通过completablefuture可以将上述model的请求变成并发调用并且可以在任务结束后拿到异步返回的结果。具体地,可以先新建一个model对象,并指定req和resp类型,然后填充该对象的各个属性。以调用签到服务为例:[0043]1.将req替换成string作为签到服务的参数,将resp替换为string作为签到服务的返回;[0044]2.设置签到服务名称为callsignservices,也即确定任务的任务名称参数;[0045]3.设置具体调用的签到服务方法,也即确定任务的下游服务参数;[0046]4.设置请求参数为userid,也即确定输入参数;[0047]5.设置兜底返回值,异常情况下返回该默认值,也即确定默认参数值;[0048]6.将servicecallmodel转换成completablefuture来进行异步化,主要是将servicecallmodel里面的servicecall封装到completablefuture.supplyasync。[0049]具体可以如下:[0050]//将req替换成string作为签到服务的参数,将resp替换为string作为签到服务的返回[0051]servicecallmodel《string,string》servicecallmodel=newservicecallmodel《》();[0052]//设置签到服务名称[0053]servicecallmodel.setcallservicename("callsignservices");[0054]//设置具体调用的签到服务方法[0055]servicecallmodel.setservicecall(signinservice::checkusersign);[0056]//设置请求参数为userid[0057]servicecallmodel.setrequest(userid);[0058]//设置兜底返回值[0059]servicecallmodel.setdefaultresp("用户没有签到");[0060]//mock.executor是线程池[0061]//servicecallmodel转换成completablefuture来进行异步化[0062]returncompletablefuture.supplyasync(()-》servicecallmodel.getservicecall().apply(servicecallmodel.getrequest()),mock.executor)。[0063]返回图2,在步骤s204中,基于至少一个任务对应的并发调用模式下的下游服务调用单元,调用对应的下游服务,获取至少一个任务的任务信息。[0064]根据本公开的示例性实施例,基于至少一个任务对应的并发调用模式下的下游服务调用单元,调用对应的下游服务,获取至少一个任务的任务信息,包括:针对至少一个任务中每个任务,将任务的输入参数输入到对应的下游服务调用单元,调用任务的下游服务参数对应的下游服务,得到任务的任务信息。根据本实施例,可以方便快速的获取任务信息。[0065]根据本公开的示例性实施例,基于至少一个任务对应的并发调用模式下的下游服务调用单元,调用对应的下游服务,获取至少一个任务的任务信息,包括:确定并发调用的最大任务数;将至少一个任务按最大任务数进行划分,得到多个任务组;针对多个任务组中一个任务组,基于任务组中任务对应的并发调用模式下的下游服务调用单元,调用对应的下游服务,获取任务组中任务的任务信息。根据本实施例,设置每次并发调用的任务数,防止并发调用的任务数过大,加大设备的负荷。[0066]根据本公开的示例性实施例,基于至少一个任务对应的并发调用模式下的下游服务调用单元,调用对应的下游服务,获取至少一个任务的任务信息,包括:设置调用时间阈值;在调用至少一个任务中一个任务的下游服务的时间超过调用时间阈值的情况下,将默认值参数作为一个任务的任务信息。根据本实施例,设置超时时间,当长时间未反馈任务信息,则将默认值作为任务信息。[0067]例如,可以创建一个动态线程池,动态线程池可以通过配置变更线程的核心数,以更好利用线程池。如为了防止线程过多或者过少,将上述转化后的completablefuture列表交给线程池来执行,控制一次并发调用的线程数量。同时,还可以启动一个定时的completablefuture作为超时时间(也即上述时间阈值)。在completablefuture按时完成后,此时完成的completablefuture可以标识为已完成,并作为已完成任务列表。另外,可以通过get()返回正常结果,未按时完成的completablefuture可以标识为超时未完成,并作为超时future列表,并通过返回defaultresp来返回降级结果。需要说明的是,线程池是一种多线程处理形式,处理过程中将任务添加到队列,然后在创建线程后自动启动这些任务;动态线程池是基于普通线程池的优化版本,可以根据配置,动态修改核心线程数量,用于充分利用cpu,防止线程池过多或者过少,导致任务执行不充分。[0068]返回图2,在步骤s205中,将至少一个任务的任务信息显示在界面上。例如,在并发调用得到所有任务的任务信息后,可以将所有任务的任务信息聚合在一起得到任务列表,显示在终端相应的界面上。[0069]下面结合图3对本公开进行详细说明,图3是根据一示例性实施例示出的一种任务信息显示方法的整理流程图,如图3所示,以短视频应用程序的赚钱页面为例进行说明,首先,用户进入到赚钱页面,请求获取任务列表,短视频应用程序接收到该请求后,组装servicecallmodel列表,再将servicecallmodel列表转换成completablefuture并发调用模式,然后启动超时定时器,以及将转换模式后得到的completablefuture列表放入动态线程池中执行,即调用相应的下游服务来获取任务信息,再检测返回任务信息的时间,也即检测超时计时器,当超时计时器到期,completablefuture按时返回任务信息的列表为正常列表(也即上述已完成任务列表),而超时计时器到期未返回任务信息的列表为超时列表(也即上述超时future列表),对于超时列表,可以直接取默认返回值作为任务信息(即defaultresp的值),将正常列表和超时列表对应结合进行组装得到任务列表,将任务列表返回给用户。[0070]为了验证本公开的可行性,下面对本公开的方案进行验证:通过对线上服务耗时进行打点以及ab实验测试,如图4所示,可以看到改造之前总耗时约152ms,同样的逻辑改造成并发调用后总耗时下降到84ms,减少(152-84)/152=44.74%。从结果上来看,极大减少了接口返回时间,降低了用户等待时长。[0071]综上,本公开将任务信息的获取由串行调用改成并发调用,然后再统一聚合,同时为了通用性,还将调用任务抽象成泛型,也即上述下游服务调用单元,其他类似的业务也可以快速接入。通过本公开获取任务信息的耗时能够不随着任务数量变多而边长,同时可以控制一个最大耗时,当某个任务的耗时时长超过该最大耗时,能够给到用户默认值,例如没有或者默认的任务详情,即可以在某个任务的下游服务出问题时,返回一个降级任务。[0072]图5是根据一示例性实施例示出的一种任务信息显示装置的框图。参照图5,该装置包括任务确定单元50、确定单元52、转换单元54、任务信息获取单元56和显示单元58。[0073]任务确定单元50,被配置为确定至少一个任务;确定单元52,被配置为确定至少一个任务中每个任务的下游服务调用单元,其中,下游服务调用单元用于调用对应的下游服务并输出对应的任务信息,下游服务为执行获取任务信息的操作的单元;转换单元54,被配置为将下游服务调用单元的模式转换为并发调用模式;任务信息获取单元56,被配置为基于至少一个任务对应的并发调用模式下的下游服务调用单元,调用对应的下游服务,获取至少一个任务的任务信息;显示单元58,被配置为将至少一个任务的任务信息显示在界面上。[0074]根据本公开的示例性实施例,下游服务调用单元中包括如下参数:输入参数、输出参数、任务名称参数、下游服务参数、默认值参数,上述确定单元52,还被配置为针对至少一个任务中每个任务,确定下游服务调用单元针对任务的输入参数和输出参数;确定任务的任务名称参数;确定任务的下游服务参数;确定任务的默认值参数。[0075]根据本公开的示例性实施例,任务信息获取单元56,还被配置为针对至少一个任务中每个任务,将任务的输入参数输入到对应的下游服务调用单元,调用任务的下游服务参数对应的下游服务,得到任务的任务信息。[0076]根据本公开的示例性实施例,任务信息获取单元56,还被配置为确定并发调用的最大任务数;将至少一个任务按最大任务数进行划分,得到多个任务组;针对多个任务组中一个任务组,基于任务组中任务对应的并发调用模式下的下游服务调用单元,调用对应的下游服务,获取任务组中任务的任务信息。[0077]根据本公开的示例性实施例,任务信息获取单元56,还被配置为设置调用时间阈值;在调用至少一个任务中一个任务的下游服务的时间超过调用时间阈值的情况下,将默认值参数作为一个任务的任务信息。[0078]根据本公开的实施例,可提供一种电子设备。图6是根据本公开实施例的一种电子设备600的框图,该电子设备包括至少一个存储器601和至少一个处理器602,所述至少一个存储器中存储有计算机可执行指令集合,当计算机可执行指令集合被至少一个处理器执行时,执行根据本公开实施例的迁移学习模型的训练方法及图像处理方法。[0079]作为示例,电子设备600可以是pc计算机、平板装置、个人数字助理、智能手机、或其他能够执行上述指令集合的装置。这里,电子设备1000并非必须是单个的电子设备,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。电子设备600还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子设备。[0080]在电子设备600中,处理器602可包括中央处理器(cpu)、图形处理器(gpu)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器602还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。[0081]处理器602可运行存储在存储器中的指令或代码,其中,存储器601还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,网络接口装置可采用任何已知的传输协议。[0082]存储器601可与处理器602集成为一体,例如,将ram或闪存布置在集成电路微处理器等之内。此外,存储器602可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储器601和处理器602可在操作上进行耦合,或者可例如通过i/o端口、网络连接等互相通信,使得处理器602能够读取存储在存储器601中的文件。[0083]此外,电子设备600还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。电子设备的所有组件可经由总线和/或网络而彼此连接。[0084]根据本公开的实施例,还可提供一种计算机可读存储介质,其中,当计算机可读存储介质中的指令被至少一个处理器运行时,促使至少一个处理器执行本公开实施例的迁移学习模型的训练方法及图像处理方法。这里的计算机可读存储介质的示例包括:只读存储器(rom)、随机存取可编程只读存储器(prom)、电可擦除可编程只读存储器(eeprom)、随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、闪存、非易失性存储器、cd-rom、cd-r、cd r、cd-rw、cd rw、dvd-rom、dvd-r、dvd r、dvd-rw、dvd rw、dvd-ram、bd-rom、bd-r、bd-rlth、bd-re、蓝光或光盘存储器、硬盘驱动器(hdd)、固态硬盘(ssd)、卡式存储器(诸如,多媒体卡、安全数字(sd)卡或极速数字(xd)卡)、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘以及任何其他装置,所述任何其他装置被配置为以非暂时性方式存储计算机程序以及任何相关联的数据、数据文件和数据结构并将所述计算机程序以及任何相关联的数据、数据文件和数据结构提供给处理器或计算机使得处理器或计算机能执行所述计算机程序。上述计算机可读存储介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,此外,在一个示例中,计算机程序以及任何相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得计算机程序以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布式方式存储、访问和执行。[0085]根据本公开实施例,提供了一种计算机程序产品,包括计算机指令,计算机指令被处理器执行时实现本公开实施例的迁移学习模型的训练方法及图像处理方法。[0086]本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本
技术领域
:中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。[0087]应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献