[發明專利]一種函數回調的方法和系統無效
| 申請號: | 201110391556.4 | 申請日: | 2011-11-30 |
| 公開(公告)號: | CN102654840A | 公開(公告)日: | 2012-09-05 |
| 發明(設計)人: | 閔衛 | 申請(專利權)人: | 天津書生投資有限公司;北京書生數字圖書館軟件技術有限公司;北京書生網絡技術有限公司 |
| 主分類號: | G06F9/46 | 分類號: | G06F9/46 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 100191 北京市海淀*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 函數 方法 系統 | ||
技術領域
本發明涉及計算機領域,特別是涉及一種函數回調的方法和系統。
背景技術
回調技術在計算機軟件設計領域應用得十分廣泛。尤其是在基于事件驅動模型的系統架構中,回調技術極大地降低了軟件模塊間的耦合性,同時提高了以處理引擎形式提供給開發用戶的軟件產品的可定制性。
一般而言,回調技術的基本原理就是調用者將自己實現的回調器向回調者注冊,回調者在緩存該回調器的某種標識后,在適當的時機使用該回調器的功能,從而使回調器的實現者得以將更多的精力投入到與其專業領域密切相關的回調器內部,而完全沒有必要去關注其它信息。
傳統意義上的回調往往都是通過函數指針實現的。圖1為現有技術中的回調技術的框架結構圖。如圖1所示,調用者首先將回調器地址注冊到回調者提供的注冊器中,而后回調者會在適當的時機通過該函數指針調用回調器函數,以實現回調。這種做法最大的問題在于,調用者和回調者必須同處于一個進程空間。因為操作系統進程壁壘的存在,限制了函數指針形式的回調器地址在不同進程間的跨越式使用。
發明內容
本發明實施例旨在提供一種函數回調方法及系統,以實現在不同進程間跨越式回調函數。
本發明提供的一種函數回調方法,包括:
調用者向回調者注冊回調器時,將回調器地址打包成進程間通信(IPC)報文發送至回調者;
回調者從IPC報文中提取并緩存回調器地址,以回調者進程空間內的本地地址向注冊器注冊;
當回調者需要調用回調器的時候,調用注冊器所接收到的本地地址,通過該本地地址從緩存中提取回調器地址,并將所述回調器地址打包成IPC報文發送至調用者;
調用者從IPC報文中提取回調器地址,調用該回調器地址所標識的回調器函數。
本發明提供的一種函數回調系統,包括位于調用者側的回調器以及回調者側的注冊器,其中,進一步包括:位于調用者側的注冊模塊和回調代理,以及位于回調者側的注冊代理和回調模塊,其中,
注冊模塊,用于將回調器地址打包成IPC報文發送至回調者所提供的注冊代理;
注冊代理,用于從回調者側的注冊模塊提供IPC報文中提取并緩存回調器地址,以回調者進程空間內的本地地址向注冊器注冊;
回調模塊,用于調用注冊器所接收到的本地地址,通過該本地地址從緩存中提取回調器地址,并將所述回調器地址打包成IPC報文發送至調用者的回調代理;
回調代理,用于從回調模塊發送過來的IPC報文中提取回調器地址,并調用所述回調器地址所標識的回調器函數。
利用本發明所提供的一種函數回調方法和系統,回調的實現不受進程地址空間的限制,不受硬件部署的限制,不受編程語言和系統平臺的限制;回調器和注冊器的實現與本地回調沒有任何差別。
附圖說明
圖1為現有技術中的回調技術的框架結構圖。
圖2為本發明一實施例中一種函數回調方法的流程圖。
圖3為本發明一實施例中一種函數回調系統的結構圖。
圖4為本發明一實施例中一種函數回調方法的流程圖。
具體實施方式
下面將結合附圖及實施例對本發明的技術方案進行更詳細的說明。
圖2所示為本發明實施例提供的一種函數回調方法,如圖2所示,該函數回調方法包括:
步驟201:當調用者向回調者注冊回調器時,將回調器地址打包成進程間通信(IPC)報文發送至回調者。
步驟202:回調者從IPC報文中提取并緩存回調器地址,以回調者進程空間內的本地地址向注冊器注冊;
在本發明一實施例中,回調者以一個回調者進程空間內的本地地址,即本地函數指針,向注冊器注冊,其中本地函數在被調用時,可從緩存中提取回調器地址。
步驟203:當回調者需要調用回調器的時候,調用注冊器所接收到的本地地址,通過該本地地址從緩存中提取回調器地址,并將所述回調器地址打包成IPC報文發送至調用者;
在本發明一實施例中,回調者調用注冊器所接收到的本地函數指針所指向的函數,通過該本地函數,從緩存中提取回調器地址,并將其與輸入數據一起打包成IPC報文發送至調用者。
步驟204:調用者從IPC報文中提取回調器地址,調用該回調器地址所標識的回調器函數;
在本發明一實施例中,調用者從IPC報文中提取回調器地址和輸入數據,并以后者為參數調用前者所標識的回調器函數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于天津書生投資有限公司;北京書生數字圖書館軟件技術有限公司;北京書生網絡技術有限公司,未經天津書生投資有限公司;北京書生數字圖書館軟件技術有限公司;北京書生網絡技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110391556.4/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種YB43A包裝機外盒商標紙吸取裝置
- 下一篇:一種制劑灌裝線人機隔離裝置





