[發明專利]數據請求的處理方法及系統在審
| 申請號: | 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.szxzyx.cn/pat/books/201711470379.2/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:配網主站數據采集鏈路自動均衡管理方法
- 下一篇:一種智能箱包管理系統





