CN117407133A - 一种任务处理方法、装置及计算机可读存储介质 - Google Patents
一种任务处理方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN117407133A CN117407133A CN202311208811.6A CN202311208811A CN117407133A CN 117407133 A CN117407133 A CN 117407133A CN 202311208811 A CN202311208811 A CN 202311208811A CN 117407133 A CN117407133 A CN 117407133A
- Authority
- CN
- China
- Prior art keywords
- task
- preset
- state
- detected
- delay queue
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 31
- 238000012545 processing Methods 0.000 claims abstract description 53
- 239000000725 suspension Substances 0.000 claims abstract description 8
- 238000000034 method Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 description 15
- 238000004891 communication Methods 0.000 description 11
- 238000001514 detection method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000000903 blocking effect Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例公开了一种任务处理方法、装置及计算机可读存储介质。本申请实施例通过获取应用软件的运行状态;当检测到运行状态为繁忙状态时,将预设任务加入延迟队列进行挂起;当检测到运行状态由繁忙状态切换至非繁忙状态时,执行延迟队列中的预设任务。以此,在检测到应用软件的运行状态为繁忙状态时,可以将部分非紧急的预设任务先加入到延迟队列进行挂起,当运行状态由繁忙状态切换至非繁忙状态时,再执行延迟队列中的预设任务,避免应用软件运行卡顿,提升任务处理的效率,进而提高应用软件的运行流畅度。
Description
技术领域
本申请涉及信息处理技术领域,具体涉及一种任务处理方法、装置及计算机可读存储介质。
背景技术
随着终端技术及通信技术的飞速发展,终端的功能也越来越强大,终端能解决人们通话、社交、拍照、娱乐和办公等各方面的需求,已经成为人们日常生活、工作和学习当中不可或缺的产品。
应用软件(Application,APP),是用各种程序设计语言编制的应用程序的集合,例如,办公室应用软件、多媒体应用软件等,而随着应用软件功能的不断增加,应用软件需要处理的任务越来越多,在任务过多的情况下,很容易导致应用软件运行卡顿,导致运行不流畅,严重影响用户的体验和操作效率。
发明内容
本申请实施例提供一种任务处理方法、装置及计算机可读存储介质,可以提升任务处理的效率,进而提高应用软件的运行流畅度。
为解决上述技术问题,本申请实施例提供以下技术方案:
一种任务处理方法,包括:
获取应用软件的运行状态;
当检测到所述运行状态为繁忙状态时,将预设任务加入延迟队列进行挂起;
当检测到所述运行状态由繁忙状态切换至非繁忙状态时,执行所述延迟队列中的预设任务。
一种任务处理装置,包括:
获取单元,用于获取应用软件的运行状态;
加入单元,用于当检测到所述运行状态为繁忙状态时,将预设任务加入延迟队列进行挂起;
执行单元,用于当检测到所述运行状态由繁忙状态切换至非繁忙状态时,执行所述延迟队列中的预设任务。
在一些实施例中,所述加入单元,用于:
获取预设任务类型的预设任务;
将预设任务根据任务类型进行优先级排序,得到优先级排序结果;
根据优先级排序结果将预设任务依次加入延迟队列。
在一些实施例中,所述执行单元,用于:
根据优先级排序结果依次从所述延迟队列中调取相应的预设任务;
当所述预设任务的执行时间大于预设时间时,将所述预设任务拆分为多个目标子任务,并依次执行所述目标子任务;
当所述预设任务的执行时间不大于预设时间时,执行所述预设任务。
在一些实施例中,所述装置,还包括确定单元,用于:
获取当前时间,根据当前时间所处的时间段确定任务执行频率;
所述执行单元,还用于:
按照所述任务执行频率依次执行所述延迟队列中的预设任务。
在一些实施例中,所述获取单元,包括:
获取子单元,用于获取所述应用软件的运行指标;
确定子单元,用于根据所述运行指标确定运行状态是否为繁忙状态。
在一些实施例中,所述运行指标至少包括中央处理器占用率、内存占用率和网络请求状态,所述确定子单元,用于:
当检测到中央处理器占用率大于第一预设阈值、内存占用率大于第二预设阈值以及网络请求状态指示为请求状态时,确定运行状态为繁忙状态;
当检测到中央处理器占用率不大于第一预设阈值、内存占用率不大于第二预设阈值以及网络请求状态指示为非请求状态时,确定运行状态为非繁忙状态。
一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行上述任务处理方法中的步骤。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可以在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述提供的任务处理方法中的步骤。
一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在存储介质中,计算机设备的处理器从存储介质读取所述计算机指令,处理器执行所述计算机指令,使得所述计算机设备执行上述提供的任务处理方法中的步骤。
本申请实施例通过获取应用软件的运行状态;当检测到运行状态为繁忙状态时,将预设任务加入延迟队列进行挂起;当检测到运行状态由繁忙状态切换至非繁忙状态时,执行延迟队列中的预设任务。以此,在检测到应用软件的运行状态为繁忙状态时,可以将部分非紧急的预设任务先加入到延迟队列进行挂起,当运行状态由繁忙状态切换至非繁忙状态时,再执行延迟队列中的预设任务,避免应用软件运行卡顿,提升任务处理的效率,进而提高应用软件的运行流畅度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的任务处理系统的场景示意图;
图2是本申请实施例提供的任务处理方法的流程示意图;
图3是本申请实施例提供的任务处理方法的另一流程示意图;
图4是本申请实施例提供的任务处理装置的结构示意图;
图5是本申请实施例提供的终端的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种任务处理方法、装置及计算机可读存储介质。
请参阅图1,图1为本申请实施例所提供的任务处理系统的场景示意图,包括:终端A和服务器B,终端A和服务器B之间可以通过通信网络连接,该通信网络,包括无线网络以及有线网络,其中无线网络包括无线广域网、无线局域网、无线城域网、以及无线个人网中的一种或多种的组合。网络中包括路由器、网关等等网络实体,图中并未示意出。终端A可以通过通信网络与服务器B进行信息交互,例如,服务器B可以将应用软件安装包发送至不同的终端A,实现终端A可以根据应用软件安装包安装相应的应用程序。
该任务处理系统可以包括任务处理装置,该任务处理装置具体可以集成在平板电脑、手机、笔记本电脑、台式电脑等具备储存单元并安装有微处理器而具有运算能力的终端中,在图1中,该终端即为图1中的终端A,该终端A中可以安装有各种用户所需的应用软件,比如视频应用软件、短视频应用软件或者即时通讯应用软件等。该终端A可以用于获取应用软件的运行状态;当检测到该运行状态为繁忙状态时,将预设任务加入延迟队列进行挂起;当检测到该运行状态由繁忙状态切换至非繁忙状态时,执行该延迟队列中的预设任务。
该服务器B可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器,用于存储和分发应用程序安装包。
需要说明的是,图1所示的任务处理系统的场景示意图仅仅是一个示例,本申请实施例描述的任务处理系统以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着任务处理系统的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
以下分别进行详细说明。
本申请实施例提供了一种任务处理方法,该方法可以由终端执行。
请参阅图2,图2是本申请实施例提供的任务处理方法的流程示意图。该任务处理方法包括:
在步骤101中,获取应用软件的运行状态。
在当前的应用软件市场中,用户对于应用软件的流畅性有着越来越高的要求。然而,而随着应用软件功能的不断增加,且终端的网络环境、中央处理器(CentralProcessing Unit,CPU)占用率和内存占用率随时变化的问题下,开发者往往难以控制和优化应用软件的性能。特别是在高峰期,应用软件的流畅度往往会受到严重影响,从而影响用户体验。因此,提高应用软件的运行流畅性是当前极具挑战性的任务。
本申请实施例为了解决上述问题,提出一种可以在终端的运算资源紧张的状态下,降低非紧急任务开销,在运算资源空闲时再去执行这些非紧急任务的方案,具体请继续参阅如下实施例。
其中,可以实时获取应用软件的运行状态,该运行状态由该应用软件占终端的运行资源的情况决定,该运行状态为繁忙状态或者非繁忙状态,该繁忙状态说明应用软件中待处理任务比较多,计算资源紧张,即应用软件占终端的运行资源较多。该非繁忙状态说明应用软件中待处理任务较少,计算资源空闲,即应用软件占终端的运行资源较少。
可以理解的是,在本申请的具体实施方式中,涉及到运行状态等相关的数据,当本申请以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关法律法规和标准。
在一些实施方式中,该获取应用软件的运行状态,包括:
(1)获取该应用软件的运行指标;
(2)根据该运行指标确定运行状态是否为繁忙状态。
其中,该运行指标即为应用软件占终端的运算资源的具体指标,该运行指标至少包括中央处理器占用率、内存占用率和网络请求状态中的至少一种。
在一实施方式中,当该运行指标为中央处理器占用率时,可以从应用软件占终端的中央处理器占用率的大小决定运行状态,例如,在该应用软件占终端的中央处理器占用率大于第一预设阈值时,判定该应用软件的运行状态为繁忙状态。而在该应用软件占终端的中央处理器占用率不大于第一预设阈值时,判定该应用软件的运行状态为非繁忙状态,该第一预设阈值可以为用户自定义的,例如百分之60,或者百分之70。
在一实施方式中,当该运行指标为内存占用率时,还可以从应用软件占终端内存的内存占用率的大小决定运行状态,例如,在该应用软件占终端内存的内存占用率大于第二预设阈值时,判定该应用软件的运行状态为繁忙状态。而在该应用软件占终端内存的内存占用率不大于第二预设阈值时,判定该应用软件的运行状态为非繁忙状态,该第二预设阈值可以为用户自定义的,例如百分之50,或者百分之60。
在一些实施方式中,该运行指标可以为包括中央处理器占用率、内存占用率和网络请求状态,该网络请求状态为终端的网络是否出于使用状态。因此,该根据该运行指标确定运行状态是否为繁忙状态,包括:
(1.1)当检测到中央处理器占用率大于第一预设阈值、内存占用率大于第二预设阈值以及网络请求状态指示为请求状态时,确定运行状态为繁忙状态;
(1.2)当检测到中央处理器占用率不大于第一预设阈值、内存占用率不大于第二预设阈值以及网络请求状态指示为非请求状态时,确定运行状态为非繁忙状态。
其中,当检测到中央处理器占用率大于第一预设阈值、内存占用率大于第二预设阈值以及网络请求状态指示为请求状态时,说明应用软件占终端的运行资源较多,需要处理的任务也较多,可以确定运行状态为繁忙状态。
相应的,当检测到中央处理器占用率不大于第一预设阈值、内存占用率不大于第二预设阈值以及网络请求状态指示为非请求状态时,说明应用软件占终端的运行资源较少,需要处理的任务也较少,可以确定运行状态为空闲状态。
需要说明的是,在说明书、权利要求书和上述附图所描述的一些流程中,包含了按照特定顺序出现的多个步骤,但应该清楚了解,这些步骤可以不按照其在本文中出现的顺序来执行或并行执行,步骤序号仅仅是用于区分开各个不同的步骤,序号本身不代表任何的执行顺序。此外,本文中的“第一”、“第二”或者“目标”等描述,是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
在步骤102中,当检测到运行状态为繁忙状态时,将预设任务加入延迟队列进行挂起。
其中,该预设任务可以为非前台显示任务,即不是前台界面需要即时显示的任务,例如下载数据的任务,该任务可以即时执行,也可以延时执行,还可以是非操作必要的任务,即不是当前操作下的必要任务,例如可以为一些数据备份的任务,该数据备份的任务可以即时执行,也可以延时执行。
以此,当检测到运行状态为繁忙状态时,说明应用软件占终端的运行资源较多,需要处理的任务也较多,可以将该预设任务加入延迟队列中暂时进行挂起,即将该预设任务的线程挂起,暂时不执行,将节省的运算资源分配给前台显示任务以及操作必要的任务,避免应用软件卡顿,使得应用软件运行更为流畅。
在一些实施方式中,该将预设任务加入延迟队列进行挂起,包括:
(1)获取预设任务类型的预设任务;
(2)将预设任务根据任务类型进行优先级排序,得到优先级排序结果;
(3)根据优先级排序结果将预设任务依次加入延迟队列。
其中,该任务类型即为每个任务的处理类型,包括支付类型、备份类型、显示类型或者下载类型等等,可以将非前台显示任务和非操作必要的任务相应的任务类型设置为预设任务类型,例如,将备份类型和下载类型设置为预设任务类型,以此,可以获取预设任务类型的预设任务。
进一步的,还可以对每个预设任务进行优先级排序,以将重要的预设任务后续可以优先进行处理,例如,可以将下载类型的优先级设置高于备份类型的优先级,以此,可以将预设任务根据任务类型进行优先级排序,得到优先级排序结果,并按照优先级排序结果将预设任务依次加入到延迟队列中。
在步骤103中,当检测到运行状态由繁忙状态切换至非繁忙状态时,执行延迟队列中的预设任务。
其中,当检测到运行状态由繁忙状态切换至非繁忙状态时,说明应用软件占终端的运行资源已经降低下来了,需要处理的任务也较少了,此时,即时执行预设任务也不会影响到应用软件的流畅度,因此,可以按照队列先进先出的原则,从延迟队列中依次取出预设任务进行执行,实现性能紧张时降低非必要任务开销,在性能空闲时再去执行这些任务,提高了任务处理的效率,保证了应用软件的运行流畅度。
在一些实施方式中,该将预设任务加入延迟队列进行挂起,包括:
(1)根据优先级排序结果依次从该延迟队列中调取相应的预设任务;
(2)当该预设任务的执行时间大于预设时间时,将该预设任务拆分为多个目标子任务,并依次执行该目标子任务;
(3)当该预设任务的执行时间不大于预设时间时,执行该预设任务。
其中,可以根据优先级排序结果,依次从该延迟队列中调取相应的预设任务,使得可以优先处理优先级别高的任务。
进一步的,为了避免线程阻塞,会将执行时间较长的任务进行拆分,该预设时间即为判定执行时间是否较长的临界值,例如,可以为1秒或者2秒等,相应的,当检测到预设任务的执行时间大于预设时间时,说明该预设任务的执行时间较长,可以将该预设任务拆分为多个目标子任务进行逐步执行,避免线程阻塞。
而相应的,当检测到预设任务的执行时间不大于预设时间时,说明该预设任务的执行时间正常,可以直接执行该预设任务。
在一些实施方式中,不同的时间段,使用应用软件的频率不同,例如,工作日的白天时间段,使用应用软件的频率相对会低,而下班后傍晚时间段,使用应用软件的频率相对会高,以此,上述方法,还包括:
获取当前时间,根据当前时间所处的时间段确定任务执行频率;
该执行该延迟队列中的预设任务,包括:
按照该任务执行频率依次执行该延迟队列中的预设任务。
其中,可以实时获取当前时间,并根据当前时间所处的时间段来确定任务执行频率,例如当前时间所处的时间段为工作日的白天时间段,此时,应用软件相对空闲,可以选取较高的任务执行频率,而当前时间所处的时间段为下班后的傍晚时间段,此时,应用软件相对繁忙,可以选取较低的任务执行频率。
以此,可以根据时间点所处时间段下确定的任务执行频率,来依次执行该延迟队列中的预设任务,实现任务处理的灵活调整。
由上述可知,本申请实施例通过获取应用软件的运行状态;当检测到运行状态为繁忙状态时,将预设任务加入延迟队列进行挂起;当检测到运行状态由繁忙状态切换至非繁忙状态时,执行延迟队列中的预设任务。以此,在检测到应用软件的运行状态为繁忙状态时,可以将部分非紧急的预设任务先加入到延迟队列进行挂起,当运行状态由繁忙状态切换至非繁忙状态时,再执行延迟队列中的预设任务,避免应用软件运行卡顿,提升任务处理的效率,进而提高应用软件的运行流畅度。
在本实施例中,将以该任务处理装置具体集成在终端中为例进行说明,具体参照以下实施例进一步进行说明。
请参阅图3,图3为本申请实施例提供的任务处理方法的另一流程示意图。该方法流程可以包括:
在步骤201中,终端获取应用软件的运行指标。
其中,该运行指标可以为包括中央处理器占用率、内存占用率和网络请求状态,即终端获取应用软件的中央处理器占用率、内存占用率和网络请求状态。
在步骤202中,终端当检测到中央处理器占用率大于第一预设阈值、内存占用率大于第二预设阈值以及网络请求状态指示为请求状态时,确定运行状态为繁忙状态。
其中,当检测到中央处理器占用率大于第一预设阈值、内存占用率大于第二预设阈值以及网络请求状态指示为请求状态时,说明应用软件占终端的运行资源较多,需要处理的任务也较多,可以确定运行状态为繁忙状态。
在步骤203中,当终端检测到运行状态为繁忙状态时,获取预设任务类型的预设任务将预设任务根据任务类型进行优先级排序,得到优先级排序结果根据优先级排序结果将预设任务依次加入延迟队列。
其中,可以将备份类型和下载类型设置为预设任务类型,以此,可以获取预设任务类型的预设任务。
进一步的,还可以对每个预设任务进行优先级排序,以将重要的预设任务后续可以优先进行处理,例如,可以将下载类型的优先级设置高于备份类型的优先级,以此,可以将预设任务根据任务类型进行优先级排序,得到优先级排序结果,并按照优先级排序结果将预设任务依次加入到延迟队列中。
在步骤204中,当终端检测到运行状态由繁忙状态切换至非繁忙状态时,根据优先级排序结果依次从延迟队列中调取相应的预设任务。
其中,当检测到运行状态由繁忙状态切换至非繁忙状态时,说明应用软件占终端的运行资源已经降低下来了,需要处理的任务也较少了,此时,即时执行预设任务也不会影响到应用软件的流畅度,因此,可以根据优先级排序结果,依次从该延迟队列中调取相应的预设任务,使得可以优先处理优先级别高的任务。
在步骤205中,当预设任务的执行时间大于预设时间时,将预设任务拆分为多个目标子任务,并依次执行目标子任务。
其中,该预设时间即为判定任务执行时间是否较长的临界值,例如,可以为1秒或者2秒等,相应的,当检测到预设任务的执行时间大于预设时间时,说明该预设任务的执行时间较长,可以将该预设任务拆分为多个目标子任务进行逐步执行,避免线程阻塞。
在步骤206中,当预设任务的执行时间不大于预设时间时,执行预设任务。
其中,当检测到预设任务的执行时间不大于预设时间时,说明该预设任务的执行时间正常,可以直接执行该预设任务。
在步骤207中,当终端检测到中央处理器占用率不大于第一预设阈值、内存占用率不大于第二预设阈值以及网络请求状态指示为非请求状态时,确定运行状态为非繁忙状态。
其中,当检测到中央处理器占用率不大于第一预设阈值、内存占用率不大于第二预设阈值以及网络请求状态指示为非请求状态时,说明应用软件占终端的运行资源较少,需要处理的任务也较少,可以确定运行状态为非繁忙状态,此时,正常执行应用软件中的全部任务即可。
为便于更好的实施本申请实施例提供的任务处理方法,本申请实施例还提供一种基于上述任务处理方法的装置。其中名词的含义与上述任务处理方法中相同,具体实现细节可以参考方法实施例中的说明。
请参阅图4,图4为本申请实施例提供的任务处理装置的结构示意图,其中该任务处理装置应用于终端,可以包括获取单元301、加入单元302、以及第二执行单元303等。
获取单元301,用于获取应用软件的运行状态。
在一些实施例中,该获取单元301,包括:
获取子单元(未标识),用于获取该应用软件的运行指标;
确定子单元(未标识),用于根据该运行指标确定运行状态是否为繁忙状态。
在一些实施例中,该运行指标至少包括中央处理器占用率、内存占用率和网络请求状态,该确定子单元,用于:
当检测到中央处理器占用率大于第一预设阈值、内存占用率大于第二预设阈值以及网络请求状态指示为请求状态时,确定运行状态为繁忙状态;
当检测到中央处理器占用率不大于第一预设阈值、内存占用率不大于第二预设阈值以及网络请求状态指示为非请求状态时,确定运行状态为非繁忙状态。
加入单元302,用于当检测到该运行状态为繁忙状态时,将预设任务加入延迟队列进行挂起。
在一些实施例中,该加入单元302,用于:
获取预设任务类型的预设任务;
将预设任务根据任务类型进行优先级排序,得到优先级排序结果;
根据优先级排序结果将预设任务依次加入延迟队列。
执行单元303,用于当检测到该运行状态由繁忙状态切换至非繁忙状态时,执行该延迟队列中的预设任务。
在一些实施例中,该执行单元303,用于:
根据优先级排序结果依次从该延迟队列中调取相应的预设任务;
当该预设任务的执行时间大于预设时间时,将该预设任务拆分为多个目标子任务,并依次执行该目标子任务;
当该预设任务的执行时间不大于预设时间时,执行该预设任务。
在一些实施例中,该装置,还包括确定单元(未标识),用于:
获取当前时间,根据当前时间所处的时间段确定任务执行频率;
该执行单元303,还用于:
按照该任务执行频率依次执行该延迟队列中的预设任务。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对任务处理方法的详细描述,此处不再赘述。
本申请实施例还提供一种计算机设备,该计算机设备可以为终端,如图5所示,其示出了本申请实施例所涉及的终端的结构示意图,具体来讲:
该计算机设备可以包括射频(RF,Radio Frequency)电路401、包括有一个或一个以上计算机可读存储介质的存储器402、输入单元403、显示单元404、传感器405、音频电路406、无线保真(WiFi,Wireless Fidelity)模块407、包括有一个或者一个以上处理核心的处理器408、以及电源409等部件。本领域技术人员可以理解,图5中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路401可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器408处理;另外,将涉及上行的数据发送给基站。通常,RF电路401包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM,Subscriber Identity Module)卡、收发信机、耦合器、低噪声放大器(LNA,Low Noise Amplifier)、双工器等。此外,RF电路401还可以通过无线通信与网络和其他设备通信。无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GSM,Global System of Mobile communication)、通用分组无线服务(GPRS,GeneralPacket Radio Service)、码分多址(CDMA,Code Division Multiple Access)、宽带码分多址(WCDMA,Wideband Code Division Multiple Access)、长期演进(LTE,Long TermEvolution)、电子邮件、短消息服务(SMS,Short Messaging Service)等。
存储器402可用于存储软件程序以及模块,处理器408通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及任务处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器408和输入单元403对存储器402的访问。
输入单元403可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元403可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器408,并能接收处理器408发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元403还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元404可用于显示由用户输入的信息或提供给用户的信息以及终端的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元404可包括显示面板,可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-Emitting Diode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器408以确定触摸事件的类型,随后处理器408根据触摸事件的类型在显示面板提供相应的视觉输出。虽然在图5中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。
终端还可包括至少一种传感器405,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板的亮度,接近传感器可在终端移动到耳边时,关闭显示面板和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路406、扬声器,传声器可提供用户与终端之间的音频接口。音频电路406可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路406接收后转换为音频数据,再将音频数据输出处理器408处理后,经RF电路401以发送给比如另一终端,或者将音频数据输出至存储器402以便进一步处理。音频电路406还可能包括耳塞插孔,以提供外设耳机与终端的通信。
WiFi属于短距离无线传输技术,终端通过WiFi模块407可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图5示出了WiFi模块407,但是可以理解的是,其并不属于终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器408是终端的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行终端的各种功能和处理数据,从而对手机进行整体监测。可选的,处理器408可包括一个或多个处理核心;优选的,处理器408可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器408中。
终端还包括给各个部件供电的电源409(比如电池),优选的,电源可以通过电源管理系统与处理器408逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源409还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端中的处理器408会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器408来运行存储在存储器402中的应用程序,从而实现各种功能:
获取单元,用于获取应用软件的运行状态;
加入单元,用于当检测到该运行状态为繁忙状态时,将预设任务加入延迟队列进行挂起;
执行单元,用于当检测到该运行状态由繁忙状态切换至非繁忙状态时,执行该延迟队列中的预设任务。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对任务处理方法的详细描述,此处不再赘述。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种任务处理方法中的步骤。例如,该指令可以执行如下步骤:
获取单元,用于获取应用软件的运行状态;
加入单元,用于当检测到该运行状态为繁忙状态时,将预设任务加入延迟队列进行挂起;
执行单元,用于当检测到该运行状态由繁忙状态切换至非繁忙状态时,执行该延迟队列中的预设任务。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例提供的各种可选实现方式中提供的方法。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该计算机可读存储介质中所存储的指令,可以执行本申请实施例所提供的任一种任务处理方法中的步骤,因此,可以实现本申请实施例所提供的任一种任务处理方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种任务处理方法、装置及计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种任务处理方法,其特征在于,包括:
获取应用软件的运行状态;
当检测到所述运行状态为繁忙状态时,将预设任务加入延迟队列进行挂起;
当检测到所述运行状态由繁忙状态切换至非繁忙状态时,执行所述延迟队列中的预设任务。
2.根据权利要求1所述的任务处理方法,其特征在于,所述将预设任务加入延迟队列进行挂起,包括:
获取预设任务类型的预设任务;
将预设任务根据任务类型进行优先级排序,得到优先级排序结果;
根据优先级排序结果将预设任务依次加入延迟队列。
3.根据权利要求2所述的任务处理方法,其特征在于,所述执行所述延迟队列中的预设任务,包括:
根据优先级排序结果依次从所述延迟队列中调取相应的预设任务;
当所述预设任务的执行时间大于预设时间时,将所述预设任务拆分为多个目标子任务,并依次执行所述目标子任务;
当所述预设任务的执行时间不大于预设时间时,执行所述预设任务。
4.根据权利要求1至3任一项所述的任务处理方法,其特征在于,所述方法,还包括:
获取当前时间,根据当前时间所处的时间段确定任务执行频率;
所述执行所述延迟队列中的预设任务,包括:
按照所述任务执行频率依次执行所述延迟队列中的预设任务。
5.根据权利要求1至3任一项所述的任务处理方法,其特征在于,所述获取应用软件的运行状态,包括:
获取所述应用软件的运行指标;
根据所述运行指标确定运行状态是否为繁忙状态。
6.根据权利要求5所述的任务处理方法,其特征在于,所述运行指标至少包括中央处理器占用率、内存占用率和网络请求状态,所述根据所述运行指标确定运行状态是否为繁忙状态,包括:
当检测到中央处理器占用率大于第一预设阈值、内存占用率大于第二预设阈值以及网络请求状态指示为请求状态时,确定运行状态为繁忙状态;
当检测到中央处理器占用率不大于第一预设阈值、内存占用率不大于第二预设阈值以及网络请求状态指示为非请求状态时,确定运行状态为非繁忙状态。
7.一种任务处理装置,其特征在于,包括:
获取单元,用于获取应用软件的运行状态;
加入单元,用于当检测到所述运行状态为繁忙状态时,将预设任务加入延迟队列进行挂起;
执行单元,用于当检测到所述运行状态由繁忙状态切换至非繁忙状态时,执行所述延迟队列中的预设任务。
8.根据权利要求7所述的任务处理装置,其特征在于,所述加入单元,用于:
获取预设任务类型的预设任务;
将预设任务根据任务类型进行优先级排序,得到优先级排序结果;
根据优先级排序结果将预设任务依次加入延迟队列。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至6任一项所述的任务处理方法中的步骤。
10.一种计算机设备,其特征在于,包括存储器、处理器以及存储在所述存储器中并可以在所述处理器上运行的计算机程序,所述处理器执行权利要求1至6任一项所述的任务处理方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311208811.6A CN117407133A (zh) | 2023-09-18 | 2023-09-18 | 一种任务处理方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311208811.6A CN117407133A (zh) | 2023-09-18 | 2023-09-18 | 一种任务处理方法、装置及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117407133A true CN117407133A (zh) | 2024-01-16 |
Family
ID=89487880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311208811.6A Pending CN117407133A (zh) | 2023-09-18 | 2023-09-18 | 一种任务处理方法、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117407133A (zh) |
-
2023
- 2023-09-18 CN CN202311208811.6A patent/CN117407133A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108512695B (zh) | 监控应用卡顿的方法及装置 | |
CN107391259B (zh) | 资源处理方法和装置、计算机可读存储介质、移动终端 | |
EP3525417A1 (en) | Data processing method, device, storage medium, electronic device and server | |
US10956280B2 (en) | Data backup method, electronic device, and storage medium | |
CN107734616B (zh) | 应用程序关闭方法、装置、存储介质和电子设备 | |
CN105786878B (zh) | 一种浏览对象的显示方法及装置 | |
US10474507B2 (en) | Terminal application process management method and apparatus | |
EP3471450B1 (en) | Network bandwidth management method, terminal and computer storage medium | |
WO2017206915A1 (zh) | 处理器中内核运行配置的确定方法以及相关产品 | |
US10719351B2 (en) | Method for controlling states of processes and related device | |
CN108334345B (zh) | 应用程序处理方法、装置、可读存储介质和移动终端 | |
WO2015081880A1 (zh) | 集群业务属性处理的方法、装置和系统 | |
CN109688611B (zh) | 一种频段参数的配置方法、装置、终端和存储介质 | |
CN108011860B (zh) | 一种处理广播消息的方法、装置及终端 | |
CN107463395B (zh) | 组件调用方法及装置 | |
US20200125369A1 (en) | Method, device, and terminal for accelerating startup of application | |
CN110677456A (zh) | 一种资源配置的方法及设备 | |
CN112261634B (zh) | 一种蓝牙传输控制方法、装置、终端设备和存储介质 | |
CN107025118B (zh) | 结束应用程序的方法及装置 | |
CN117407133A (zh) | 一种任务处理方法、装置及计算机可读存储介质 | |
CN110209491B (zh) | 一种资源管理方法、装置、服务器及存储介质 | |
CN109426572B (zh) | 任务处理方法、装置及电子设备 | |
CN114189436B (zh) | 一种多集群配置部署方法、装置、电子设备和存储介质 | |
CN112087763B (zh) | 无线保真WiFi连接方法、装置及电子设备 | |
CN111405649B (zh) | 一种信息传输方法、装置及移动终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |