任务执行方法、装置、设备及存储介质制造方法及图纸

技术编号:37715532 阅读:16 留言:0更新日期:2023-06-02 00:11
本公开关于一种任务执行方法、装置、设备及存储介质,涉及计算机技术领域。方法包括:响应于应用客户端中目标任务被触发,获取应用客户端的多个线程的线程状态,目标任务由嵌入应用客户端的目标功能模块提供,线程状态包括空闲状态和占用状态;从应用客户端的多个线程池中,基于多个线程的线程状态,确定目标线程池,目标线程池包括至少一个空闲线程;基于目标线程池中的至少一个空闲线程,执行目标任务。该方法基于多个申请来源的线程来执行该任务,而不是仅基于提供该任务的目标功能模块申请的线程来执行该任务,提高了线程的合理利用率且降低了应用客户端的线程申请量。降低了应用客户端的线程申请量。降低了应用客户端的线程申请量。

【技术实现步骤摘要】
任务执行方法、装置、设备及存储介质


[0001]本公开涉及计算机
,尤其涉及一种任务执行方法、装置、设备及存储介质。

技术介绍

[0002]电子设备上安装的应用基于多个功能模块可以提供多种功能,而每个功能模块可使用的资源受限于该应用,即每个功能模块的可用资源较少。以资源为线程为例,每个应用可申请的线程数量是有限的,申请过多则会造成应用的卡顿,而每个功能模块均需要基于线程来执行任务,因此急需一种合理使用线程来执行任务的方法。

技术实现思路

[0003]本公开提供一种任务执行方法、装置、设备及存储介质,该方法提高了线程的合理利用率且降低了应用客户端的线程申请量。本公开的技术方案如下:
[0004]根据本公开实施例的第一方面,提供一种任务执行方法,所述方法包括:
[0005]响应于应用客户端中目标任务被触发,获取所述应用客户端的多个线程的线程状态,所述目标任务由嵌入所述应用客户端的目标功能模块提供,所述线程状态包括空闲状态和占用状态;
[0006]从所述应用客户端的多个线程池中,基于所述多个线程的线程状态本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种任务执行方法,其特征在于,所述方法包括:响应于应用客户端中目标任务被触发,获取所述应用客户端的多个线程的线程状态,所述目标任务由嵌入所述应用客户端的目标功能模块提供,所述线程状态包括空闲状态和占用状态;从所述应用客户端的多个线程池中,基于所述多个线程的线程状态,确定目标线程池,所述目标线程池包括至少一个空闲线程;基于所述目标线程池中的所述至少一个空闲线程,执行所述目标任务。2.根据权利要求1所述的任务执行方法,其特征在于,所述从所述应用客户端的多个线程池中,基于所述多个线程的线程状态,确定目标线程池,包括:基于所述多个线程的线程状态,确定所述多个线程中的多个空闲线程;对于每个空闲线程,对所述空闲线程进行代码反射,得到所述空闲线程中的工作线程;基于所述工作线程对应的目标成员变量,从所述多个线程池中,确定所述空闲线程所在的第一线程池,所述目标成员变量用于标记所述第一线程池;从多个第一线程池中,确定所述目标线程池。3.根据权利要求2所述的任务执行方法,其特征在于,所述从多个第一线程池中,确定所述目标线程池,包括:在所述多个第一线程池中包括第二线程池的情况下,将所述第二线程池作为所述目标线程池,所述第二线程池为所述目标功能模块申请的线程池;在所述多个第一线程池中不包括所述第二线程池且包括第三线程池的情况下,将所述第三线程池作为所述目标线程池,所述第三线程池为基础应用申请的线程池,所述基础应用用于实现所述应用客户端中除功能模块以外的功能;在所述多个第一线程池中不包括所述第二线程池和所述第三线程池且包括第四线程池的情况下,将所述第四线程池作为所述目标线程池,所述第四线程池为嵌入所述应用客户端的多个功能模块中除所述目标功能模块以外的功能模块申请的线程池。4.根据权利要求2所述的任务执行方法,其特征在于,所述从多个第一线程池中,确定所述目标线程池,包括:将所述多个第一线程池中空闲线程数目最多的第一线程池作为所述目标线程池。5.根据权利要求1所述的任务执行方法,其特征在于,所述获取所述应用客户端的多个线程的线程状态,包括:获取所述应用客户端已申请的线程数量;在所述线程数量超过预设阈值的情况下,获取所述应用客户端的多个线程的线程状态。6.根据权利要求5所述的任务执行方法,其特征在于,所述方法还包括:在所述线程数量不超过所述预设阈值的情况下,基于所述目标功能模块申请线程池,基于所申请的线程池中的线程执行所述目标任务;或者,在所述线程数量不超过所述预设阈值的情况下,基...

【专利技术属性】
技术研发人员:石洪禹陈帅
申请(专利权)人:北京达佳互联信息技术有限公司
类型:发明
国别省市:

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

1