[發(fā)明專利]一種消息鎖處理方法及裝置有效
| 申請?zhí)枺?/td> | 201810289426.1 | 申請日: | 2018-03-30 |
| 公開(公告)號: | CN108686373B | 公開(公告)日: | 2021-07-23 |
| 發(fā)明(設(shè)計)人: | 孟志兵;張文明;陳少杰 | 申請(專利權(quán))人: | 武漢斗魚網(wǎng)絡(luò)科技有限公司 |
| 主分類號: | A63F13/355 | 分類號: | A63F13/355;A63F13/70;A63F13/79;G06F9/54;H04L29/06;H04L29/08 |
| 代理公司: | 北京眾達(dá)德權(quán)知識產(chǎn)權(quán)代理有限公司 11570 | 代理人: | 劉杰 |
| 地址: | 430000 湖北省武漢市東湖開*** | 國省代碼: | 湖北;42 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 消息 處理 方法 裝置 | ||
本發(fā)明公開了一種消息鎖處理方法及裝置,該方法包括:監(jiān)控所述游戲客戶端與游戲服務(wù)端之間是否發(fā)生斷線重連;如果是,對所述游戲客戶端的本地數(shù)組加鎖,觸發(fā)從所述本地數(shù)組中取出第一套接字socket消息的事件中斷,其中,所述第一socket消息為在所述游戲客戶端與所述游戲服務(wù)端之間發(fā)生斷線重連之前存入所述本地數(shù)組的至少一個socket消息;在所述游戲客戶端與所述游戲服務(wù)端之間重新處于連接狀態(tài)下,若監(jiān)控到所述游戲客戶端的游戲界面重新打開,對所述本地數(shù)組解鎖;向所述本地數(shù)組中存入第二socket消息,觸發(fā)對從所述本地數(shù)組中取出所述第一socket消息和所述第二socket消息進(jìn)行處理的事件執(zhí)行。從而本發(fā)明解決了現(xiàn)有技術(shù)中斷線重連后游戲過程卡住的技術(shù)問題。
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)傳輸領(lǐng)域,尤其涉及一種消息鎖處理方法及裝置。
背景技術(shù)
Android設(shè)備與服務(wù)端的通信方式主要有兩種,一種是HTTP通信,另一種是socket(套接字)通信。兩者的最大差異在于,HTTP連接使用的是“請求—響應(yīng)方式”,即在請求時建立連接通道,當(dāng)客戶端向服務(wù)端發(fā)送請求后,服務(wù)端才能向客戶端返回數(shù)據(jù)。而socket通信則是在雙方建立起連接后就可以直接進(jìn)行數(shù)據(jù)的傳輸,在連接時可實(shí)現(xiàn)信息的主動推送,而不需要每次由客戶端向服務(wù)端發(fā)送請求。在程序內(nèi)部提供了與外界通信的端口,即端口通信。通過建立socket連接,可為通信雙方的數(shù)據(jù)傳輸傳提供通道。socket通信有數(shù)據(jù)丟失率低,使用簡單且易于移植的優(yōu)點(diǎn)。
在游戲領(lǐng)域,游戲客戶端會因?yàn)閿嗑W(wǎng)等原因發(fā)生與游戲服務(wù)端之間的斷線重連、游戲界面也會在斷線重連成功后重新打開,而游戲界面的重新打開需要耗費(fèi)一定時間,在游戲界面未重新打開之前,游戲服務(wù)端可能會下發(fā)新的socket消息,觸發(fā)游戲客戶端從本地數(shù)組中取出socket消息進(jìn)行處理,從而,由于游戲界面還未打開,當(dāng)前處理的socket消息會被浪費(fèi)掉,而游戲過程中的socket消息是一環(huán)扣一環(huán)的,進(jìn)而導(dǎo)致后續(xù)的socket消息也無法被處理,進(jìn)而導(dǎo)致游戲過程卡住。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例通過提供一種消息鎖處理方法及裝置,解決了斷線重連后游戲過程卡住的技術(shù)問題。
第一方面,本發(fā)明實(shí)施例提供一種消息鎖處理方法,應(yīng)用于游戲客戶端,其特征在于,包括:
監(jiān)控所述游戲客戶端與游戲服務(wù)端之間是否發(fā)生斷線重連;
如果是,對所述游戲客戶端的本地數(shù)組加鎖,觸發(fā)從所述本地數(shù)組中取出第一套接字socket消息的事件中斷,其中,所述第一socket消息為在所述游戲客戶端與所述游戲服務(wù)端之間發(fā)生斷線重連之前存入所述本地數(shù)組的至少一個socket消息;
在所述游戲客戶端與所述游戲服務(wù)端之間重新處于連接狀態(tài)下,若監(jiān)控到所述游戲客戶端的游戲界面重新打開,對所述本地數(shù)組解鎖;
向所述本地數(shù)組中存入第二socket消息,觸發(fā)對從所述本地數(shù)組中取出所述第一socket消息和所述第二socket消息進(jìn)行處理的事件執(zhí)行。
可選的,在監(jiān)控所述游戲客戶端與游戲服務(wù)端之間是否發(fā)生斷線重連之后,還包括如下步驟:
步驟a、在所述游戲客戶端與所述游戲服務(wù)端之間發(fā)生斷線重連之前,若接收到當(dāng)前socket消息,存儲所述當(dāng)前socket消息至所述本地數(shù)組;
步驟b、從所述本地數(shù)組中取出所述當(dāng)前socket消息進(jìn)行處理,基于處理得到的游戲數(shù)據(jù)進(jìn)行游戲過程;
重復(fù)執(zhí)行所述步驟a至步驟b,直至所述游戲客戶端與所述游戲服務(wù)端之間發(fā)生所述斷線重連。
可選的,所述從所述本地數(shù)組中取出所述當(dāng)前socket消息進(jìn)行處理,包括:
判斷所述本地數(shù)組中當(dāng)前是否存在未處理的socket消息;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于武漢斗魚網(wǎng)絡(luò)科技有限公司,未經(jīng)武漢斗魚網(wǎng)絡(luò)科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810289426.1/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:一種新型空氣炮
- 下一篇:游戲系統(tǒng)





