基于人工智能的App耗时任务优化方法、装置及相关设备制造方法及图纸

技术编号:31812542 阅读:13 留言:0更新日期:2022-01-08 11:15
本申请涉及人工智能,提供基于人工智能的App耗时任务优化方法。本发明专利技术提供的方法包括:根据App所在终端设备的运行属性将所述App耗时任务拆分成预设第一数量的子耗时任务,CountDownLatch的初始值设为所述预设第一数量;创建预设第一数量的子线程执行所述子耗时任务;所述App的主线程进入等待状态,所述子线程开始并行执行且执行过程结束则将CountDownLatch的值减一,并记录执行过程消耗的第一时间;当所述子线程执行结束且CountDownLatch的值小于或等于零时,所述App的主线程恢复成工作状态,并记录所述主线程等待的第二时间;利用所述运行属性、所述预设第一数量、所述第一时间和所述第二时间分析所述耗时任务的执行情况后优化并更新所述预设第一数量。一数量。一数量。

【技术实现步骤摘要】
基于人工智能的App耗时任务优化方法、装置及相关设备


[0001]本专利技术涉及人工智能
,尤其涉及基于人工智能的App耗时任务优化方法、装置及电子设备。

技术介绍

[0002]目前在终端设备上对于App中的耗时任务的操作只能在软件开发阶段由开发人员根据开发经验固化的写入到程序代码中,导致在一些所述终端设备上执行效率低下,后续的修改的过程也需要重新修改代码生成安装包后发布新版本,同时程序代码中对于耗时任务处理使用多线程的方法会用到线程切换,而传统移动开发技术中线程切换运用的Handler方式会存在嵌套、回调和监听等复杂代码使得所述App的项目代码复杂性增加和可维护性降低。

技术实现思路

[0003]本专利技术实施例提供基于人工智能的App耗时任务优化方法、装置、计算机设备及存储介质,以解决终端设备上App中的耗时任务执行效率低下和完成所述耗时任务的代码复杂度高的问题。
[0004]基于人工智能的App耗时任务优化方法,包括:
[0005]根据App所在终端设备的运行属性将所述App耗时任务拆分成预设第一数量的子耗时任务,CountDownLatch的初始值设为所述预设第一数量;
[0006]创建所述预设第一数量的子线程,并将所述子耗时任务分配给一一对应的所述子线程;
[0007]所述App的主线程进入等待状态,所有所述子线程开始并行执行所述子耗时任务,所述子线程执行过程结束则将CountDownLatch的值减一,记录所述子线程执行过程消耗的第一时间;
[0008]当所有所述子线程执行结束且CountDownLatch的值小于或等于零时,所述App的主线程从等待状态恢复成工作状态,并记录所述App的主线程等待的第二时间;
[0009]利用所述运行属性、所述预设第一数量、所述第一时间和所述第二时间分析所述耗时任务的执行情况,根据所述执行情况及预设第一规则优化并更新所述预设第一数量。
[0010]基于人工智能的App耗时任务优化装置,包括:
[0011]任务拆分模块,用于根据App所在终端设备的运行属性将所述App耗时任务拆分成预设第一数量的子耗时任务,CountDownLatch的初始值设为所述预设第一数量;
[0012]任务分配模块,用于创建所述预设第一数量的子线程,并将所述子耗时任务分配给一一对应的所述子线程;
[0013]任务执行模块,用于所述App的主线程进入等待状态,所有所述子线程开始并行执行所述子耗时任务,所述子线程执行过程结束则将CountDownLatch的值减一,记录所述子线程执行过程消耗的第一时间;
[0014]线程切换模块,用于当所有所述子线程执行结束且CountDownLatch的值小于或等于零时,所述App的主线程从等待状态恢复成工作状态,并记录所述App的主线程等待的第二时间;
[0015]分析优化模块,用于利用所述运行属性、所述预设第一数量、所述第一时间和所述第二时间分析所述耗时任务的执行情况,根据所述执行情况及预设第一规则优化并更新所述预设第一数量。
[0016]一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于人工智能的App耗时任务优化方法的步骤。
[0017]一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述基于人工智能的App耗时任务优化方法的步骤。
[0018]上述基于人工智能的App耗时任务优化方法、装置、计算机设备及存储介质,根据App所在终端设备的硬件性能参数、运行状态和所述耗时任务的类型将所述App耗时任务拆分成预设第一数量的子耗时任务,并创建对应数量的子线程一一对应地执行所述子耗时任务,并记录所述耗时任务的完成时间后对所述预设第一数量进行优化,使用CountDownLatch来进行所述App的主线程和子线程之间的调度,不仅提升了所述App耗时任务的执行效率和在所述终端设备上的所述App中动态优化所述App耗时任务的执行效率,而且使用CountDownLatch方式管理所述App的主线程和子线程切换进一步降低了所述耗时任务的代码部分的代码复杂度并提升了代码可维护性。
附图说明
[0019]为了更清楚地说明本专利技术实施例的技术方案,下面将对本专利技术实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0020]图1是本专利技术一实施例中基于人工智能的App耗时任务优化方法的一应用环境示意图;
[0021]图2是本专利技术一实施例中基于人工智能的App耗时任务优化方法的一流程图;
[0022]图3是本专利技术一实施例中基于人工智能的App耗时任务优化装置的结构示意图;
[0023]图4是本专利技术一实施例中电子设备的一示意图。
具体实施方式
[0024]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0025]本申请提供的基于人工智能的App耗时任务优化方法,可应用在如图1的应用环境100中,其中,终端设备102通过网络103与服务器101进行通信;其中,终端设备102可以但不限于各种智能手机、平板电脑和便携式可穿戴设备;服务器101可以是独立的服务器,也可
以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器;其中,需要特别指出的是所述终端设备102在无网络103与所述服务器101通信的情况下也可以执行。
[0026]可以理解的是图1中的服务器、网络和终端设备的数量仅仅是示意性的,可以根据实际需求进行任意数量的扩展。
[0027]在一实施例中,如图2所示,提供基于人工智能的App耗时任务优化方法,以该方法应用在图1中的终端设备102为例进行说明,包括如下步骤S201至S205:
[0028]S201、根据App所在终端设备的运行属性将所述App耗时任务拆分成预设第一数量的子耗时任务,CountDownLatch的初始值设为所述预设第一数量。
[0029]进一步地,所述运行属性包括所述终端设备的硬件性能参数、所述终端设备的运行状态和所述耗时任务的类型。
[0030]其中,所述终端设备的硬件性能参数,包括但不限于:CPU型号、CPU频率、CPU位数、CPU支持指令集、CPU核心数、GPU型号、GPU显存容量、内存容量、存储容量、屏幕本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于人工智能的App耗时任务优化方法,其特征在于,包括:根据App所在终端设备的运行属性将所述App耗时任务拆分成预设第一数量的子耗时任务,CountDownLatch的初始值设为所述预设第一数量;创建所述预设第一数量的子线程,并将所述子耗时任务分配给一一对应的所述子线程;所述App的主线程进入等待状态,所有所述子线程开始并行执行所述子耗时任务,所述子线程执行过程结束则将CountDownLatch的值减一,记录所述子线程执行过程消耗的第一时间;当所有所述子线程执行结束且CountDownLatch的值小于或等于零时,所述App的主线程从等待状态恢复成工作状态,并记录所述App的主线程等待的第二时间;利用所述运行属性、所述预设第一数量、所述第一时间和所述第二时间分析所述耗时任务的执行情况,根据所述执行情况及预设第一规则优化并更新所述预设第一数量。2.根据权利要求1所述基于人工智能的App耗时任务优化方法,其特征在于,所述运行属性包括所述终端设备的硬件性能参数,所述App被安装到所述终端设备后,所述方法还包括:获取所述终端设备的硬件性能参数判断所述终端设备的硬件性能,再根据所述预设第一规则修改所述预设第一数量。3.根据权利要求2所述基于人工智能的App耗时任务优化方法,其特征在于,所述运行属性包括所述终端设备的运行状态和所述耗时任务的类型,所述创建所述预设第一数量的子线程,并将所述子耗时任务分配给一一对应的所述子线程包括:所有所述子线程创建都成功时,将所述子耗时任务分配给一一对应的所述子线程;存在至少一个子线程创建失败且存在至少一个子线程创建成功时,按照已经创建成功的所述子线程的第二数量重新将所述耗时任务拆分成所述第二数量的子耗时任务,并将拆分的第二数量的子耗时任务分配给一一对应的所述子线程;所述子线程创建都失败时,停止所述耗时任务的执行,所述App的主线程从等待状态恢复成工作状态,并记录并存储所述子线程创建失败的异常记录、当前所述终端设备的运行状态和所述耗时任务的类型。4.根据权利要求1所述基于人工智能的App耗时任务优化方法,其特征在于,在所述创建预设第一数量的子线程之后,所述方法还包括:所述子线程执行所述子线程任务失败时,进行不大于预设重试次数的重试操作,超过预设重试次数仍然失败时则所述子线程执行过程结束。5.根据权利要求1所述基于人工智能的App耗时任务优化方法,其特征在于,在所述创建预设第一数量的子线程之后,所述方法还包括:创建线程池管理所述子线程,将所述子线程都加入所述线程池中,所述子线程在执行过程结束后,等待下一次被分配所述子耗时任务。6.根据权利要求3所述基于人工智能的App耗时任务优化方法,其特征在于,在所述根据所述执行情况及预设第一规则优化并更新所述预设第一数量之后,所述方法还包括:将所述终端设备的所述运行属性、所述预设第一数量、所述预设第一规则、所述第一时间和所述第二时间发送至云端管理平台进行管理和分析。
7.根据权利要求6所述基于人工智能的...

【专利技术属性】
技术研发人员:董秋平
申请(专利权)人:平安普惠企业管理有限公司
类型:发明
国别省市:

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

1