[發明專利]一種星型結構的多進程間的通信方法和裝置有效
| 申請號: | 201310198340.5 | 申請日: | 2013-05-24 |
| 公開(公告)號: | CN103294541B | 公開(公告)日: | 2017-04-26 |
| 發明(設計)人: | 張飛;李香富;張熾成 | 申請(專利權)人: | 福建聯迪商用設備有限公司 |
| 主分類號: | G06F9/46 | 分類號: | G06F9/46 |
| 代理公司: | 福州市博深專利事務所(普通合伙)35214 | 代理人: | 林志崢 |
| 地址: | 350003 福建省福州*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 結構 進程 通信 方法 裝置 | ||
技術領域
本發明涉及通信領域,特別是提出了一種星型結構的多進程間的通信方法和裝置。
背景技術
在進行藍牙相關的多線程編程時,遇到這樣的需求:一個進程需要與其他多個進程或線程進行數據交互,且交互的數據量不大,但數據交互的時間具有隨機性,即要能阻塞監聽等待通信鏈路;需要能異步終止線程。一般情況下要同時與多個進程或線程進行數據通信,則每條通信鏈路需要建立一個進程或線程去阻塞等待事件的發生,這樣程序會比較復雜。異步終止線程則一般使用pthread_cancel通知線程終止,或通過全局變量等方式在線程中循環詢查方式來終止線程等方法,但會存在線程終止時的資源清理問題或執行效率低下的問題,嚴重時甚至出現程序意外終止的情況。
1.目前多進程間通信通常使用管道、消息隊列、共享內存、信號量、套接口等方式,同時與多個進程或線程進行數據通信,則每條通信鏈路都建立一個進程或線程去阻塞等待事件的發生。
2.線程終止一般使用pthread_cancel通知線程終止,或通過全局變量等方式在線程中循環詢查方式來終止線程。
通常使用的多進程間通信方法(管道、消息隊列、共享內存、信號量、套接口等),一般如果使用阻塞方式則需要花費一個進程或線程去阻塞等待事件的發生,而如果是非阻塞則又需要使用查詢的方式去反復查詢事件的發生。前者會使程序進程或線程數目增多,增加程序的復雜性,而后者又會浪費額外的系統資源在查詢事件的發生上。另外,在多線程編程中,異步終止線程一般使用pthread_cancel或全局變量方式異步終止線程,或存在資源清理問題或浪費額外的系統資源。圖1是一般的實時多進程間通信模型結構示意圖。
發明內容
本發明提供一種適用于類似于網絡拓撲結構中的星型結構的多進程間的通信發明,在線程中使用poll函數巧妙地將控制鏈路和通信鏈路結合在一起,進行集中監測,這樣從宏觀上看就是一個線程就可以同時與多個線程或進程進行通信。通信鏈路用于具體的功能信息的交互使用,控制鏈路用于具體的控制信息的交互使用。通過本發明,解決了多進程通信中的一對多的模型中一般通信方法無法在一個進程或線程中同時與其他多個線程或進程進行通信的問題,同時通過控制鏈路來通知線程從線程內部主動結束線程操作的方法,提供了一種異步終止線程的方法。
本發明從整體上來看包括控制器,處理器,功能模塊三個部分。首先由控制器啟動處理器,并和處理器建立控制鏈路,隨后處理器用poll阻塞監測控制器與處理器之間的控制器鏈路和處理器與其他功能模塊之間的功能鏈路;控制器通過控制鏈路可以控制處理器新增和刪減處理器與功能模塊間的通信鏈路及監測功能,還可以通過控制鏈路關閉處理器;其他功能模塊則通過新增的通信鏈路進行具體的功能性操作交互。
本發明通過poll函數與套接字組合使用,在一個線程或進程中集中式同時監測多個通信鏈路的句柄,并可以動態增加和刪減所監測的通信鏈路句柄,避開一般方法中通信鏈路在阻塞方式下一條通路花費一個進程或線程的問題,降低了程序的復雜性,也不需要使用查詢方式產生額外的系統開銷。同時通過建立的控制鏈路,通知線程從線程內部主動結束線程,提供了一種異步終止線程的方法,簡化線程異步終止時資源清理過程,規避查詢方式帶來的額外系統開銷。
附圖說明
通過參照附圖更詳細地描述本發明的示例性實施例,本發明的以上和其它方面及優點將變得更加易于清楚,在附圖中:
圖1:一般實時多進程間通信模型結構示意圖;
圖2:本發明實施例的一種星型結構的多進程間的通信模型結構示意圖;
圖3:本發明的一種星型結構的多進程間的通信模型框架圖;
圖4:本發明在程序運行的過程中存在的變化過程流程圖。
具體實施方式
在下文中,現在將參照附圖更充分地描述本發明,在附圖中示出了各種實施例。然而,本發明可以以許多不同的形式來實施,且不應該解釋為局限于在此闡述的實施例。相反,提供這些實施例使得本公開將是徹底和完全的,并將本發明的范圍充分地傳達給本領域技術人員。
在下文中,將參照附圖更詳細地描述本發明的示例性實施例。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于福建聯迪商用設備有限公司,未經福建聯迪商用設備有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310198340.5/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:接口調用管理方法和服務器
- 下一篇:一種信息處理的方法及電子設備





