[發明專利]一種基于狀態機的消息驅動方法和裝置有效
| 申請號: | 201110453245.6 | 申請日: | 2011-12-30 |
| 公開(公告)號: | CN102541644A | 公開(公告)日: | 2012-07-04 |
| 發明(設計)人: | 熊磊 | 申請(專利權)人: | 深圳市萬興軟件有限公司 |
| 主分類號: | G06F9/46 | 分類號: | G06F9/46 |
| 代理公司: | 深圳匯智容達專利商標事務所(普通合伙) 44238 | 代理人: | 潘中毅 |
| 地址: | 518057 廣東省深圳*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 狀態機 消息 驅動 方法 裝置 | ||
1.一種基于狀態機的消息驅動方法,其特征在于,包括:
狀態機接收掛接在本機上的程序模塊發送的注冊請求;所述注冊請求中包括該程序模塊在運行過程中會發送、接收的消息和系統控制指令;
狀態機根據掛接在本機上的程序模塊發送的注冊請求進行初始化,并生成注冊消息表;
狀態機根據所述注冊消息表,將接收的消息轉發至對應的程序模塊。
2.如權利要求1所述的基于狀態機的消息驅動方法,其特征在于,所述狀態機至少包括三層結構,從上往下依次為:用戶界面層狀態機、邏輯狀態層狀態機、功能支撐層狀態機。
3.如權利要求2所述的基于狀態機的消息驅動方法,其特征在于,所述用戶界面層狀態機接收位于用戶界面層的程序模塊發送的注冊請求,生成用戶界面層注冊消息表;
邏輯狀態層狀態機接收位于邏輯狀態層的程序模塊發送的注冊請求,生成邏輯狀態層注冊消息表;
功能支撐層狀態機接收位于功能支撐層的程序模塊發送的注冊請求,生成功能支撐層注冊消息表。
4.如權利要求2所述的基于狀態機的消息驅動方法,其特征在于,所述狀態機根據所述注冊消息表,將接收的消息轉發至對應的程序模塊包括:
狀態機接收到消息后,在自身的注冊消息表中查找本層是否有接收所述消息的程序模塊;若有,則將所述消息轉發給對應的程序模塊;若沒有,則狀態機將所述消息轉發給其它層的狀態機。
5.如權利要求4所述的基于狀態機的消息驅動方法,其特征在于,所述狀態機將所述消息轉發給其它層的狀態機包括:
用戶界面層狀態機和功能支撐層狀態機判斷消息來源,若消息來自狀態機自身所在層的程序模塊,則用戶界面層狀態機和功能支撐層狀態機向邏輯狀態層狀態機轉發消息;若消息來自邏輯狀態層狀態機,則用戶界面層狀態機和功能支撐層狀態機向邏輯狀態層狀態機丟棄該消息;
邏輯狀態層狀態機判斷消息來源,若消息來自本層的程序模塊,則向用戶界面層狀態機和功能支撐層狀態機轉發該消息;若消息來自用戶界面層狀態機,則向功能支撐層狀態機轉發該消息;若消息來自功能支撐層狀態機,則向用戶界面層狀態機轉發該消息。
6.如權利要求1至5中任一項所述的基于狀態機的消息驅動方法,其特征在于,所述狀態機在轉發消息的過程中,不對消息進行任何處理。
7.一種基于狀態機的消息驅動裝置,其特征在于,該裝置由多個狀態機組成,且每一個的狀態機都包括:
注冊請求接收模塊,用于接收掛接在本機上的程序模塊發送的注冊請求;所述注冊請求中包括該程序模塊在運行過程中會發送、接收的消息和系統控制指令;
消息表創建模塊,用于根據所述注冊請求接收模塊所接收的掛接在本機上的程序模塊發送的注冊請求進行初始化,并生成注冊消息表;
消息轉發模塊,用于根據所述消息表創建模塊所生成的注冊消息表,將接收的消息轉發至對應的程序模塊。
8.如權利要求7所述的基于狀態機的消息驅動裝置,其特征在于,該裝置包括三個狀態機,從上往下依次為:用戶界面層狀態機、邏輯狀態層狀態機、功能支撐層狀態機;
用戶界面層狀態機接收位于用戶界面層的程序模塊發送的注冊請求,生成用戶界面層注冊消息表;邏輯狀態層狀態機接收位于邏輯狀態層的程序模塊發送的注冊請求,生成邏輯狀態層注冊消息表;功能支撐層狀態機接收位于功能支撐層的程序模塊發送的注冊請求,生成功能支撐層注冊消息表。
9.如權利要求7所述的基于狀態機的消息驅動裝置,其特征在于,所述消息轉發模塊包括:
查詢單元,用于在狀態機接收到消息后,在消息表創建模塊生成的注冊消息表中查找本層是否有接收所述消息的程序模塊;
轉發單元,用于在查詢單元判定本層有接收所述消息的程序模塊時,將所述消息轉發給對應的程序模塊;在查詢單元判定本層沒有接收所述消息的程序模塊時,將所述消息轉發給其它層的狀態機。
10.如權利要求9所述的基于狀態機的消息驅動裝置,其特征在于,所述轉發單元在查詢單元判定本層沒有接收所述消息的程序模塊時,將所述消息轉發給其它層的狀態機,包括:
用戶界面層狀態機和功能支撐層狀態機的轉發單元判斷消息來源,若消息來自狀態機自身所在層的程序模塊,則用戶界面層狀態機和功能支撐層狀態機的轉發單元向邏輯狀態層狀態機轉發消息;若消息來自邏輯狀態層狀態機,則用戶界面層狀態機和功能支撐層狀態機向邏輯狀態層狀態機的轉發單元丟棄該消息;
邏輯狀態層狀態機的轉發單元判斷消息來源,若消息來自邏輯狀態層的程序模塊,則轉發單元向用戶界面層狀態機和功能支撐層狀態機轉發該消息;若消息來自用戶界面層狀態機,則轉發單元向功能支撐層狀態機轉發該消息;若消息來自功能支撐層狀態機,則轉發單元向用戶界面層狀態機轉發該消息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳市萬興軟件有限公司,未經深圳市萬興軟件有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110453245.6/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種燈殼結構
- 下一篇:一種鎖附件、背光模組和液晶顯示裝置





