[發(fā)明專利]一種基于PC客戶端的socket通信方法在審
| 申請?zhí)枺?/td> | 201710259758.0 | 申請日: | 2017-04-19 |
| 公開(公告)號: | CN106936927A | 公開(公告)日: | 2017-07-07 |
| 發(fā)明(設(shè)計)人: | 方敏 | 申請(專利權(quán))人: | 武漢票據(jù)交易中心有限公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08;H04L29/06 |
| 代理公司: | 北京輕創(chuàng)知識產(chǎn)權(quán)代理有限公司11212 | 代理人: | 陳衛(wèi) |
| 地址: | 430074 湖北省武漢市東*** | 國省代碼: | 湖北;42 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 pc 客戶端 socket 通信 方法 | ||
1.一種基于PC客戶端的socket通信方法,其特征在于,包括:
S1、啟動新線程,根據(jù)預(yù)定參數(shù)創(chuàng)建socket處理器對象,同時啟動新線程創(chuàng)建socket連接監(jiān)視器對象;
S2、在所述socket處理器對象中,創(chuàng)建socket連接處理對象,將所述socket連接處理對象的當(dāng)前連接狀態(tài)設(shè)置為未連接狀態(tài);
S3、啟動新線程,啟動所述socket連接處理對象,向服務(wù)器發(fā)送連接請求,與所述服務(wù)器建立socket連接;
S4、連接成功后,獲取所述socket連接處理對象的連接ID,同時將所述socket連接處理對象的當(dāng)前連接狀態(tài)設(shè)置為連接狀態(tài),通過所述socket連接處理對象與所述服務(wù)器進(jìn)行數(shù)據(jù)交互,同時將所述socket連接處理對象和所述連接ID添加到所述socket連接監(jiān)視器對象的socket連接監(jiān)視列表中。
2.根據(jù)權(quán)利要求1所述的一種基于PC客戶端的socket通信方法,其特征在于,步驟S1中,如果所述預(yù)定參數(shù)包括的服務(wù)器地址列表中包括多個服務(wù)器地址,則生成多個socket連接處理對象,與多個服務(wù)器建立socket連接。
3.根據(jù)權(quán)利要求2所述的一種基于PC客戶端的socket通信方法,其特征在于,步驟S3中,與所述服務(wù)器建立socket連接的方法包括:
A1、判斷所述預(yù)定參數(shù)包括的連接設(shè)定參數(shù)中是否包括重連時間列表,如是,則將所述重連時間列表中最大重連時間設(shè)置為當(dāng)前最大重連時間,否則,將客戶端默認(rèn)的最大重連時間設(shè)置為當(dāng)前最大重連時間;
A2、在所述當(dāng)前最大重連時間內(nèi),與所述服務(wù)器反復(fù)建立socket連接,直到連接成功。
4.根據(jù)權(quán)利要求3所述的一種基于PC客戶端的socket通信方法,其特征在于,步驟S4中,獲取所述socket連接處理對象的連接ID的方法包括:
B1、向所述服務(wù)器發(fā)送用于獲取連接ID的消息,接收所述服務(wù)器返回的第一次連接時為所述客戶端生成的第一連接ID;
B2、將所述第一連接ID設(shè)置為所述socket連接處理對象的連接ID。
5.根據(jù)權(quán)利要求4所述的一種基于PC客戶端的socket通信方法,其特征在于,步驟S4中,通過所述socket連接處理對象與所述服務(wù)器進(jìn)行數(shù)據(jù)交互的方法包括:
C1、實例化讀處理器和寫處理器,分別得到第一讀處理對象和第一寫處理對象;
C2、將所述第一讀處理對象和所述第二寫處理對象分別設(shè)置為所述socket連接處理對象的讀處理對象和寫處理對象;
C3、啟動第一線程,通過所述讀處理對象讀取并處理所述服務(wù)器發(fā)送的消息;
C4、啟動第二線程,通過所述寫處理對象將寫隊列中的待寫入數(shù)據(jù)發(fā)送給所述服務(wù)器。
6.根據(jù)權(quán)利要求5所述的一種基于PC客戶端的socket通信方法,其特征在于,步驟C3包括:
C31、從線程池啟動第一線程,通過所述讀處理對象從所述socket連接處理對象的連接通道中讀取字節(jié)流格式的第一數(shù)據(jù)塊;
C32、調(diào)用所述預(yù)定參數(shù)包括的消息格式變換處理類的數(shù)據(jù)格式轉(zhuǎn)換方法將所述第一數(shù)據(jù)塊轉(zhuǎn)化為消息格式的第一消息;
C33、調(diào)用所述socket連接處理對象的消息處理方法處理所述第一消息,結(jié)束所述第一線程。
7.根據(jù)權(quán)利要求6所述的一種基于PC客戶端的socket通信方法,其特征在于,步驟C4包括:
C41、從線程池啟動第二線程,通過所述寫處理對象從寫隊列中讀取消息格式的第二消息;
C42、調(diào)用所述消息格式變換處理類的數(shù)據(jù)格式轉(zhuǎn)換方法將所述第二消息轉(zhuǎn)化為字節(jié)流格式的第二數(shù)據(jù)塊;
C43、調(diào)用底層的寫數(shù)據(jù)流方法將所述第二數(shù)據(jù)塊寫入所述socket連接處理對象的連接通道中,并發(fā)送給所述服務(wù)器,結(jié)束所述第二線程。
8.根據(jù)權(quán)利要求1-7任一項所述的一種基于PC客戶端的socket通信方法,其特征在于,步驟S1中,根據(jù)預(yù)定參數(shù)創(chuàng)建socket處理器對象的方法包括:判斷所述預(yù)定參數(shù)包括的連接設(shè)定參數(shù)中是否包括SSL信息,如是,則根據(jù)所述SSL信息中的密匙文件和密碼創(chuàng)建加密的socket處理器對象。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于武漢票據(jù)交易中心有限公司,未經(jīng)武漢票據(jù)交易中心有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710259758.0/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





