[发明专利]数据请求的处理方法及系统在审
| 申请号: | 201711470379.2 | 申请日: | 2017-12-29 |
| 公开(公告)号: | CN108234624A | 公开(公告)日: | 2018-06-29 |
| 发明(设计)人: | 卢林清;段凌云;白国松 | 申请(专利权)人: | 贵阳语玩科技有限公司 |
| 主分类号: | H04L29/08 | 分类号: | H04L29/08 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 550022 贵州省贵阳市国家高*** | 国省代码: | 贵州;52 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 线程 可观察 客户端界面 组装 数据请求 阻塞 异步网络请求 数据管理 对象发送 方法调用 结果通知 请求封装 同步方式 异步方式 类调用 主线程 返回 观察 | ||
本发明公开了一种数据请求的处理方法及系统,上述方法包括:UI线程以异步方式发起多个数据的请求;数据管理类调用方法将所述多个数据的请求封装成组合的可观察对象,将所述UI线程注册为所述组合的可观察对象的观察者;采用所述组合的可观察对象发送所述多个数据的请求,阻塞所述方法调用的线程,以同步方式等待返回每一个请求对应的结果;在所有结果都返回后,采用所述组合的可观察对象将所有结果进行组装,并将组装后的结果通知所述UI线程;所述UI线程根据所述组装后的结果刷新客户端界面。根据本发明提供的技术方案,可以在不阻塞主线程的情况下,同时进行多个异步网络请求,并可以避免客户端界面频繁刷新。
技术领域
本发明涉及通信领域,具体而言,涉及一种数据请求的处理方法及系统。
背景技术
在Android应用程序开发过程中,常常涉及到基于HTTP和TCP的两种网络请求方式。对于基于HTTP的方式,已经有很多成熟的开源解决方案来处理同步请求并异步回调。但在处理通过原生开发工具(Native DevelopmentKit,简称为NDK)的方式访问的基于TCP的网络请求方面,尚缺乏成熟的处理方案,尤其需要处理同时多个异步请求完成并同时异步回调结果的问题时。
Android应用程序通过NDK的方式,调用由C/C++编写的网络请求回调接口,可能这些接口和安卓应用程序处于不同的进程中。并且,由于服务器端的设计考虑,客户端需要的数据由不同的网络请求和回调完成。如果这些网络请求分别进行,由于跨进程和跨网络进行通信的原因,数据返回的时序无法预估,导致客户端在每个回调回来都需要刷新一次界面,导致界面频繁刷新,影响手机的续航能力及客户端的流畅性,带来不好的用户体验。
存在这样的场景:客户端在某个UI界面需要展示的数据,由两个或以上API接口完成,并且,不能在主线程中进行网络请求和阻塞主线程以等待网络请求完成。
因此,如何在不阻塞主线程的情况下,同时进行多个异步网络请求,并避免客户端界面频繁刷新是目前亟待解决的问题。
发明内容
本发明的主要目的在于公开了一种数据请求的处理方法及系统,以至少解决相关技术中在不阻塞主线程的情况下,同时进行多个异步网络请求,并避免客户端界面频繁刷新,目前还缺乏相应技术方案的问题。
根据本发明的一个方面,提供了一种数据请求的处理方法。
根据本发明的数据请求的处理方法包括:UI线程以异步方式发起多个数据的请求;数据管理类调用方法将上述多个数据的请求封装成组合的可观察对象,将上述UI线程注册为上述组合的可观察对象的观察者;采用上述组合的可观察对象发送上述多个数据的请求,阻塞上述方法调用的线程,以同步方式等待返回每一个请求对应的结果;在所有结果都返回后,采用上述组合的可观察对象将所有结果进行组装,并将组装后的结果通知上述UI线程;上述UI线程根据上述组装后的结果刷新客户端界面。
根据本发明的一个方面,提供了一种数据请求的处理系统。
根据本发明的数据请求的处理系统包括:UI线程模块、数据管理类模块,其中,上述UI线程模块包括:发起子模块,用于以异步方式发起多个数据的请求;注册子模块,用于注册为组合的可观察对象的观察者;以及接收刷新子模块,用于接收上述组装后的结果并刷新客户端界面;上述数据管理类模块包括:封装子模块,用于将上述多个数据的请求封装成组合的可观察对象;发送子模块,用于采用上述组合的可观察对象发送上述多个数据的请求;阻塞子模块,用于阻塞上述方法调用的线程,以同步方式等待返回每一个请求对应的结果;接收组装子模块,用于接收返回的所有结果,在所有结果都返回后,采用上述组合的可观察对象将所有结果进行组装;以及通知子模块,用于将组装后的结果通知上述UI线程模块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于贵阳语玩科技有限公司,未经贵阳语玩科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711470379.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:配网主站数据采集链路自动均衡管理方法
- 下一篇:一种智能箱包管理系统





