[发明专利]一种处理客户端任务的方法、装置和电子设备有效
申请号: | 202010660620.3 | 申请日: | 2020-07-10 |
公开(公告)号: | CN111782426B | 公开(公告)日: | 2023-09-22 |
发明(设计)人: | 陈友;丘晓强 | 申请(专利权)人: | 上海淇毓信息科技有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/50 |
代理公司: | 上海点威知识产权代理有限公司 31326 | 代理人: | 杜焱 |
地址: | 200062 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 处理 客户端 任务 方法 装置 电子设备 | ||
本说明书实施例提供一种处理客户端任务的方法,客户端创建主线程,主线程只执行用户操作触发的消息处理任务,同时在执行消息处理任务的开始、完成时刻向过程提取器发送开始、完成信息,从而使提取执行消息处理任务过程中的过程数据(基于接收到的开始信息和结束信息确定主线程执行消息处理任务的过程时长,并提取执行消息处理任务过程中产生的堆栈数据)可以由过程提取器来实现,继而响应于所述消息处理任务的完成便可以执行消息处理任务的附加任务。由于不需要主线程亲自提取过程数据,因而缩短了执行消息处理任务过程中开始时刻到完成时刻的时间间隔,使得附加任务能够及时执行,加快了对用户操作的反馈。
技术领域
本申请涉及计算机领域,尤其涉及一种处理客户端任务的方法、装置和电子设备。
背景技术
客户端对于用户操作的处理,多是创建主线程执行相应消息处理任务,在执行完这些任务之后,利用这些执行任务产生或者获得的数据以执行附加业务的形式对用户操作进行返回,以完成与用户的交互过程。
同时,由于业内对于优化代码的需求,现有的方式往往是在主线程的代码中植入计时函数和抓取堆栈的函数,这样,在执行消息处理任务之外,便可以抓取执行消息处理任务过程中产生的堆栈数据以及任务耗时,以便后续对任务的耗时分布进行分析,进而分析有没有进一步优化的可能。
然而,由于计时和抓取堆栈的过程也需要消耗一定的时间,因而导致无法及时执行附加任务,因此,如果能够提出一种新的方法,使得附加任务能够及时进行,将会加快对用户操作进行反馈的过程,提升用户体验。
发明内容
本说明书实施例提供一种处理客户端任务的方法、装置和电子设备,用以提升执行用户操作对应的附加任务的及时性,加快反馈过程。
本说明书实施例提供一种处理客户端任务的方法,包括:
客户端创建主线程,通过所述主线程执行用户操作触发的消息处理任务,并在执行所述消息处理任务的开始时刻向过程提取器发送开始信息,在执行所述消息处理任务的完成时刻向所述过程提取器发送结束信息;
提取执行所述消息处理任务过程中的过程数据:基于接收到的所述开始信息和所述结束信息确定所述主线程执行所述消息处理任务的过程时长,并提取执行所述消息处理任务过程中产生的堆栈数据;
响应于所述消息处理任务的完成执行所述消息处理任务的附加任务。
可选的,还包括:
创建过程提取器,所述过程提取器用于提取执行所述消息处理任务过程中的过程数据;
所述基于接收到的所述开始信息和所述结束信息确定所述主线程执行所述消息处理任务的过程时长,包括:
在接收到所述开始信息时开始对所述主线程当前执行的消息处理任务进行计时,确定接收到所述结束信息时的计时得到的时长。
可选的,所述通过所述主线程执行用户操作触发的消息处理任务,并在执行所述消息处理任务的开始时刻向过程提取器发送开始信息,包括:
利用多核处理器的第一处理单元分配的时间片,通过所述主线程执行用户操作触发的消息处理任务,并在执行消息处理任务的开始时刻向过程提取器发送开始信息;
所述提取执行所述消息处理任务过程中的过程数据,包括:
利用所述多核处理器的第二处理单元分配的时间片在执行所述消息处理任务的同时并行提取执行所述消息处理任务过程中的过程数据。
可选的,所述响应于所述消息处理任务的完成执行所述消息处理任务的附加任务,包括:
响应于所述消息处理任务的完成,利用执行所述消息处理任务产生的数据进行页面渲染。
可选的,所述通过所述主线程执行用户操作触发的消息处理任务,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海淇毓信息科技有限公司,未经上海淇毓信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010660620.3/2.html,转载请声明来源钻瓜专利网。