[發明專利]一種狀態機協作控制方法、裝置及狀態機系統無效
| 申請號: | 201010568912.0 | 申請日: | 2010-12-01 |
| 公開(公告)號: | CN102486743A | 公開(公告)日: | 2012-06-06 |
| 發明(設計)人: | 蔡學鏞 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | G06F11/14 | 分類號: | G06F11/14 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 逯長明;王寶筠 |
| 地址: | 英屬開曼群島大開曼*** | 國省代碼: | 開曼群島;KY |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 狀態機 協作 控制 方法 裝置 系統 | ||
技術領域
本申請涉及計算機應用技術領域,特別是涉及一種狀態機協作控制方法、裝置及狀態機系統。
背景技術
狀態機(state?machine)定義了多個狀態以及狀態之間的遷移。狀態機通過響應一系列事件而運行,當事件滿足某些觸發條件時,將導致狀態機從當前的狀態遷移到下一個狀態。在所定義的多個狀態之中,存在至少一個初態和至少一個終態,狀態機從初態開始運行,當遷移到終態時,狀態機停止運行。
狀態機在計算機領域應用非常廣泛,許多系統都使用到狀態機,狀態機根據狀態機定義(狀態圖)來運行。如果系統需要實現復雜的邏輯功能,則相應的狀態機定義也會十分復雜。因此導致狀態機的設計非常復雜,設計過程中容易出錯且限制了狀態機的表達能力。另外,由于狀態機所定義各個狀態之間彼此存在著遷移關系,無法單獨拆出狀態機定義的某一部分進行分析,因此對于較為復雜的狀態機系統,當運行出現問題時,往往難以發現問題所在。
發明內容
為解決上述技術問題,本申請實施例提供一種狀態機協作控制方法、裝置及狀態機系統,通過多個簡單狀態機的協作來實現復雜的邏輯功能,當狀態機系統運行出現問題時,可以分別針對每個簡單狀態機進行分析,從而簡化狀態機設計,更有利于快速排查系統問題。本申請技術方案如下:
本申請實施例提供一種狀態機協作控制方法,應用于包括至少兩個狀態機的狀態機系統,該方法包括:
A.狀態機協作控制裝置接收待發派事件,判斷所述待發派事件是否具有指定接收的狀態機實例,如果是,執行步驟B,如果否,執行步驟C;
B.狀態機協作控制裝置將所述待發派事件發送至所述指定接收的狀態機實例,執行步驟D;
C.狀態機協作控制裝置將所述待發派事件發送至所述系統內部的所有狀態機實例,執行步驟D;
D.如果所述待發派事件觸發某一系統內部狀態機實例的發生狀態遷移并輸出事件,則該狀態機實例將輸出事件作為待發派事件發送至所述狀態機協作控制裝置,返回步驟A。
本申請實施例還提供一種狀態機協作控制裝置,應用于包括至少兩個狀態機的狀態機系統,其特征在于,該裝置包括:
接收單元,用于接收待發派事件,判斷所述待發派事件是否具有指定接收的狀態機實例;所述待發派事件包括:系統外部向系統輸入的事件、或系統內部的狀態機實例所輸出的事件;
第一發送單元,用于在所述接收單元的判斷結果為是時,將所述待發派事件發送至所述指定接收的狀態機實例;
第二發送單元,用于在所述接收單元的判斷結果為否時,將所述待發派事件發送至所述系統中的所有狀態機實例。
本申請實施例還提供一種狀態機系統,該系統包括狀態機協作控制裝置和至少兩個狀態機;
所述狀態機協作控制裝置,接收待發派事件,判斷所述待發派事件是否具有指定接收的狀態機實例,如果是,則將所述待發派事件發送至所述指定接收的狀態機實例,否則將所述待發派事件發送至所述系統內部的所有狀態機實例;
系統內部狀態機所創建的狀態機實例,接收所述狀態機協作控制裝置發送的待發派事件,如果所述待發派事件該狀態機實例的發生狀態遷移并輸出事件,則該狀態機實例將輸出事件作為待發派事件發送至所述狀態機協作控制裝置。
本申請實施例提供的技術方案,由狀態機協作控制裝置將事件統一發派到系統內的各個狀態機實例,如果某個狀態機實例有輸出事件,則該狀態機實例將輸出事件反饋至狀態機協作控制裝置,狀態機協作控制裝置再次對該事件進行發派。應用以上技術方案,可以在一個狀態機系統中,通過多個簡單狀態機的協作來實現復雜狀態機的功能,狀態機系統運行出現問題時,可以分別針對每個簡單狀態機進行分析,從而簡化狀態機設計,更有利于快速排查系統問題。此外,與單一狀態機相比,多個狀態機的協作可以實現更為豐富的狀態機語意,具有更強的表達能力。
附圖說明
為了更清楚地說明本申請實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請中記載的一些實施例,對于本領域普通技術人員來講,還可以根據這些附圖獲得其他的附圖。
圖1為本申請實施例狀態機系統的結構示意圖;
圖2為本申請實施例狀態機協作控制方法的流程圖;
圖3為本申請實施例狀態機協作控制裝置的結構示意圖;
圖4為本申請實施例狀態機父子模式協作關系的示意圖;
圖5為本申請實施例狀態機瀑布模式協作關系的示意圖;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010568912.0/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種圓方形實驗臺桌架
- 下一篇:一種污水沉淀缸





