[發(fā)明專利]一種實(shí)現(xiàn)進(jìn)程間數(shù)據(jù)交換的方法及裝置有效
| 申請(qǐng)?zhí)枺?/td> | 201310549591.3 | 申請(qǐng)日: | 2013-11-07 |
| 公開(公告)號(hào): | CN104636210B | 公開(公告)日: | 2018-11-09 |
| 發(fā)明(設(shè)計(jì))人: | 葉禮偉;羅程;李斌 | 申請(qǐng)(專利權(quán))人: | 騰訊科技(深圳)有限公司 |
| 主分類號(hào): | G06F9/54 | 分類號(hào): | G06F9/54 |
| 代理公司: | 廣州三環(huán)專利商標(biāo)代理有限公司 44202 | 代理人: | 賈允;肖丁 |
| 地址: | 518044 廣東省深圳*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 實(shí)現(xiàn) 進(jìn)程 數(shù)據(jù) 交換 方法 裝置 | ||
一種實(shí)現(xiàn)進(jìn)程間數(shù)據(jù)交換的方法,包括:將CFMessagePort封裝出服務(wù)端接口和客戶端接口,服務(wù)端進(jìn)程通過(guò)該服務(wù)端接口與該CFMessagePort建立服務(wù),客戶端進(jìn)程調(diào)用該客戶端接口向該服務(wù)端進(jìn)程發(fā)送數(shù)據(jù)處理請(qǐng)求,其中包含所請(qǐng)求的服務(wù)端進(jìn)程的名稱,該CFMessagePort根據(jù)該服務(wù)端進(jìn)程的名稱,在該客戶端進(jìn)程和該服務(wù)端進(jìn)程之間建立連接,將該客戶端進(jìn)程發(fā)送的請(qǐng)求處理的數(shù)據(jù),轉(zhuǎn)發(fā)給該服務(wù)端進(jìn)程進(jìn)行處理,并將處理后的數(shù)據(jù)轉(zhuǎn)發(fā)給該客戶端進(jìn)程。上述實(shí)現(xiàn)進(jìn)程間數(shù)據(jù)交換的方法及裝置,可提高數(shù)據(jù)處理速度。
技術(shù)領(lǐng)域
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種實(shí)現(xiàn)進(jìn)程間數(shù)據(jù)交換的方法及裝置。
背景技術(shù)
IOS系統(tǒng)為了保證程序有足夠的資源來(lái)運(yùn)行的更加穩(wěn)定、流暢,對(duì)程序的運(yùn)行做了很多的限制,例如不能在后臺(tái)運(yùn)行非系統(tǒng)級(jí)別的程序,程序切換到后臺(tái)會(huì)在很短時(shí)間后被系統(tǒng)掛起停止運(yùn)行。程序之間不能相互訪問(wèn)資源,因此不能進(jìn)行程序(或進(jìn)程)間數(shù)據(jù)交換。
現(xiàn)有技術(shù)中,主要采用socket方式來(lái)進(jìn)行數(shù)據(jù)交換,socket用于描述IP地址和端口,是一個(gè)通信鏈的句柄。Socket正如其英文原意“插座”那樣,象一個(gè)多孔插座。主機(jī)一般運(yùn)行多個(gè)服務(wù)軟件,同時(shí)提供幾種服務(wù),每種服務(wù)都打開一個(gè)Socket并綁定到一個(gè)端口上,不同的端口對(duì)應(yīng)于不同的服務(wù)。兩個(gè)進(jìn)程之間進(jìn)行數(shù)據(jù)交換時(shí),需要該兩個(gè)進(jìn)程中一方作為服務(wù)端(server)建立起來(lái),另一方則作為客戶端(client)連接到服務(wù)端給定的接口后就可以進(jìn)行數(shù)據(jù)交換。
但是在上述現(xiàn)有技術(shù)中,存在下述缺陷:由于需要事先獲知服務(wù)端進(jìn)程提供的端口,同時(shí)還存在端口被其他進(jìn)程中的服務(wù)端方占用的風(fēng)險(xiǎn),因此需要在服務(wù)端采用動(dòng)態(tài)端口的方式,這就需要借助其他方式將端口通知客戶端進(jìn)程。服務(wù)端進(jìn)程或者客戶端進(jìn)程之間的連接不穩(wěn)定導(dǎo)致socket連接斷開或者發(fā)送數(shù)據(jù)超時(shí),則需要重新連接服務(wù)端進(jìn)程和客戶端進(jìn)程,或者重新發(fā)送數(shù)據(jù),因此進(jìn)程間建立和維護(hù)socket連接比較繁瑣。另外,由于需要事先在進(jìn)程之間建立服務(wù)端和客戶端連接,只適合服務(wù)端和客戶端一對(duì)一連接的“星狀”的程序架構(gòu)方式,應(yīng)用范圍窄,并且,對(duì)于多個(gè)進(jìn)程之間交互連接的網(wǎng)狀連接方式進(jìn)行數(shù)據(jù)交換時(shí),則需要在每個(gè)進(jìn)程內(nèi)部都各自建立一個(gè)服務(wù)端接口和客戶端接口才能滿足需要,這樣服務(wù)端進(jìn)程和客戶端進(jìn)程之間的數(shù)據(jù)交換維護(hù)起來(lái)更加的困難和繁雜,同時(shí)對(duì)于使用不是很頻繁、對(duì)數(shù)據(jù)的實(shí)時(shí)性要求很高的需求,采用socket方式來(lái)實(shí)現(xiàn)會(huì)大部分時(shí)間段無(wú)效的占用了系統(tǒng)資源。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供一種實(shí)現(xiàn)進(jìn)程間數(shù)據(jù)交換的方法及裝置,用于提高進(jìn)程間處理并交換數(shù)據(jù)的效率。
本發(fā)明實(shí)施例提供的實(shí)現(xiàn)進(jìn)程間數(shù)據(jù)交換的方法,包括:將CFMessagePort進(jìn)行封裝,使得所述CFMessagePort同時(shí)為進(jìn)程提供服務(wù)端接口和客戶端接口;服務(wù)端進(jìn)程通過(guò)所述服務(wù)端接口與所述CFMessagePort建立服務(wù);客戶端進(jìn)程調(diào)用所述客戶端接口向所述服務(wù)端進(jìn)程發(fā)送數(shù)據(jù)處理請(qǐng)求,所述數(shù)據(jù)處理請(qǐng)求中包含所請(qǐng)求的所述服務(wù)端進(jìn)程的名稱;所述CFMessagePort根據(jù)所述服務(wù)端進(jìn)程的名稱,在所述客戶端進(jìn)程和所述服務(wù)端進(jìn)程之間建立連接,將所述客戶端進(jìn)程發(fā)送的請(qǐng)求處理的數(shù)據(jù),轉(zhuǎn)發(fā)給所述服務(wù)端進(jìn)程進(jìn)行處理,并將處理后的數(shù)據(jù)轉(zhuǎn)發(fā)給所述客戶端進(jìn)程。
本發(fā)明實(shí)施例提供的實(shí)現(xiàn)進(jìn)程間數(shù)據(jù)交換的裝置,包括:封裝單元,用于將CFMessagePort進(jìn)行封裝,使得所述CFMessagePort同時(shí)為進(jìn)程提供服務(wù)端接口和客戶端接口;第一建立單元,用于服務(wù)端進(jìn)程通過(guò)所述封裝單元封裝得到的所述服務(wù)端接口與所述CFMessagePort建立服務(wù);發(fā)送單元,用于客戶端進(jìn)程調(diào)用所述封裝單元封裝得到的所述客戶端接口向所述服務(wù)端進(jìn)程發(fā)送數(shù)據(jù)處理請(qǐng)求,所述數(shù)據(jù)處理請(qǐng)求中包含所請(qǐng)求的所述服務(wù)端進(jìn)程的名稱;第二建立單元,用于所述CFMessagePort根據(jù)所述發(fā)送單元發(fā)送的所述服務(wù)端進(jìn)程的名稱,在所述客戶端進(jìn)程和所述服務(wù)端進(jìn)程之間建立連接;所述發(fā)送單元,還用于將所述客戶端進(jìn)程發(fā)送的請(qǐng)求處理的數(shù)據(jù),轉(zhuǎn)發(fā)給所述服務(wù)端進(jìn)程進(jìn)行處理,并將處理后的數(shù)據(jù)轉(zhuǎn)發(fā)給所述客戶端進(jìn)程。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于騰訊科技(深圳)有限公司,未經(jīng)騰訊科技(深圳)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310549591.3/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 互動(dòng)業(yè)務(wù)終端、實(shí)現(xiàn)系統(tǒng)及實(shí)現(xiàn)方法
- 街景地圖的實(shí)現(xiàn)方法和實(shí)現(xiàn)系統(tǒng)
- 游戲?qū)崿F(xiàn)系統(tǒng)和游戲?qū)崿F(xiàn)方法
- 圖像實(shí)現(xiàn)裝置及其圖像實(shí)現(xiàn)方法
- 增強(qiáng)現(xiàn)實(shí)的實(shí)現(xiàn)方法以及實(shí)現(xiàn)裝置
- 軟件架構(gòu)的實(shí)現(xiàn)方法和實(shí)現(xiàn)平臺(tái)
- 數(shù)值預(yù)報(bào)的實(shí)現(xiàn)方法及實(shí)現(xiàn)系統(tǒng)
- 空調(diào)及其冬眠控制模式實(shí)現(xiàn)方法和實(shí)現(xiàn)裝置以及實(shí)現(xiàn)系統(tǒng)
- 空調(diào)及其睡眠控制模式實(shí)現(xiàn)方法和實(shí)現(xiàn)裝置以及實(shí)現(xiàn)系統(tǒng)
- 輸入設(shè)備實(shí)現(xiàn)方法及其實(shí)現(xiàn)裝置
- 一種進(jìn)程自動(dòng)恢復(fù)方法
- 進(jìn)程啟動(dòng)方法及內(nèi)核、進(jìn)程
- 一種進(jìn)程間的通信方法和裝置
- 進(jìn)程解析裝置、進(jìn)程解析方法和進(jìn)程解析程序
- 32位進(jìn)程和64位進(jìn)程交叉注入方法及裝置
- 一種應(yīng)用進(jìn)程控制方法及裝置
- 插件下載方法及裝置
- 進(jìn)程間的數(shù)據(jù)傳輸方法和裝置
- 進(jìn)程監(jiān)視裝置、進(jìn)程監(jiān)視方法和進(jìn)程監(jiān)視程序
- 一種基于動(dòng)態(tài)監(jiān)測(cè)的進(jìn)程優(yōu)化調(diào)度方法
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





