專利名稱:一種狀態(tài)機協(xié)作控制方法、裝置及狀態(tài)機系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本申請涉及計算機應(yīng)用技術(shù)領(lǐng)域,特別是涉及一種狀態(tài)機協(xié)作控制方法、裝置及狀態(tài)機系統(tǒng)。
背景技術(shù):
狀態(tài)機(state machine)定義了多個狀態(tài)以及狀態(tài)之間的遷移。狀態(tài)機通過響應(yīng)一系列事件而運行,當(dāng)事件滿足某些觸發(fā)條件時,將導(dǎo)致狀態(tài)機從當(dāng)前的狀態(tài)遷移到下一個狀態(tài)。在所定義的多個狀態(tài)之中,存在至少一個初態(tài)和至少一個終態(tài),狀態(tài)機從初態(tài)開始運行,當(dāng)遷移到終態(tài)時,狀態(tài)機停止運行。狀態(tài)機在計算機領(lǐng)域應(yīng)用非常廣泛,許多系統(tǒng)都使用到狀態(tài)機,狀態(tài)機根據(jù)狀態(tài)機定義(狀態(tài)圖)來運行。如果系統(tǒng)需要實現(xiàn)復(fù)雜的邏輯功能,則相應(yīng)的狀態(tài)機定義也會十分復(fù)雜。因此導(dǎo)致狀態(tài)機的設(shè)計非常復(fù)雜,設(shè)計過程中容易出錯且限制了狀態(tài)機的表達能力。另外,由于狀態(tài)機所定義各個狀態(tài)之間彼此存在著遷移關(guān)系,無法單獨拆出狀態(tài)機定義的某一部分進行分析,因此對于較為復(fù)雜的狀態(tài)機系統(tǒng),當(dāng)運行出現(xiàn)問題時,往往難以發(fā)現(xiàn)問題所在。
發(fā)明內(nèi)容
為解決上述技術(shù)問題,本申請實施例提供一種狀態(tài)機協(xié)作控制方法、裝置及狀態(tài)機系統(tǒng),通過多個簡單狀態(tài)機的協(xié)作來實現(xiàn)復(fù)雜的邏輯功能,當(dāng)狀態(tài)機系統(tǒng)運行出現(xiàn)問題時,可以分別針對每個簡單狀態(tài)機進行分析,從而簡化狀態(tài)機設(shè)計,更有利于快速排查系統(tǒng)問題。本申請技術(shù)方案如下本申請實施例提供一種狀態(tài)機協(xié)作控制方法,應(yīng)用于包括至少兩個狀態(tài)機的狀態(tài)機系統(tǒng),該方法包括A.狀態(tài)機協(xié)作控制裝置接收待發(fā)派事件,判斷所述待發(fā)派事件是否具有指定接收的狀態(tài)機實例,如果是,執(zhí)行步驟B,如果否,執(zhí)行步驟C ;B.狀態(tài)機協(xié)作控制裝置將所述待發(fā)派事件發(fā)送至所述指定接收的狀態(tài)機實例,執(zhí)行步驟D;C.狀態(tài)機協(xié)作控制裝置將所述待發(fā)派事件發(fā)送至所述系統(tǒng)內(nèi)部的所有狀態(tài)機實例,執(zhí)行步驟D ;D.如果所述待發(fā)派事件觸發(fā)某一系統(tǒng)內(nèi)部狀態(tài)機實例的發(fā)生狀態(tài)遷移并輸出事件,則該狀態(tài)機實例將輸出事件作為待發(fā)派事件發(fā)送至所述狀態(tài)機協(xié)作控制裝置,返回步驟A。本申請實施例還提供一種狀態(tài)機協(xié)作控制裝置,應(yīng)用于包括至少兩個狀態(tài)機的狀態(tài)機系統(tǒng),其特征在于,該裝置包括接收單元,用于接收待發(fā)派事件,判斷所述待發(fā)派事件是否具有指定接收的狀態(tài)機實例;所述待發(fā)派事件包括系統(tǒng)外部向系統(tǒng)輸入的事件、或系統(tǒng)內(nèi)部的狀態(tài)機實例所輸出的事件;第一發(fā)送單元,用于在所述接收單元的判斷結(jié)果為是時,將所述待發(fā)派事件發(fā)送至所述指定接收的狀態(tài)機實例;第二發(fā)送單元,用于在所述接收單元的判斷結(jié)果為否時,將所述待發(fā)派事件發(fā)送至所述系統(tǒng)中的所有狀態(tài)機實例。本申請實施例還提供一種狀態(tài)機系統(tǒng),該系統(tǒng)包括狀態(tài)機協(xié)作控制裝置和至少兩個狀態(tài)機;所述狀態(tài)機協(xié)作控制裝置,接收待發(fā)派事件,判斷所述待發(fā)派事件是否具有指定接收的狀態(tài)機實例,如果是,則將所述待發(fā)派事件發(fā)送至所述指定接收的狀態(tài)機實例,否則將所述待發(fā)派事件發(fā)送至所述系統(tǒng)內(nèi)部的所有狀態(tài)機實例;系統(tǒng)內(nèi)部狀態(tài)機所創(chuàng)建的狀態(tài)機實例,接收所述狀態(tài)機協(xié)作控制裝置發(fā)送的待發(fā)派事件,如果所述待發(fā)派事件該狀態(tài)機實例的發(fā)生狀態(tài)遷移并輸出事件,則該狀態(tài)機實例將輸出事件作為待發(fā)派事件發(fā)送至所述狀態(tài)機協(xié)作控制裝置。本申請實施例提供的技術(shù)方案,由狀態(tài)機協(xié)作控制裝置將事件統(tǒng)一發(fā)派到系統(tǒng)內(nèi)的各個狀態(tài)機實例,如果某個狀態(tài)機實例有輸出事件,則該狀態(tài)機實例將輸出事件反饋至狀態(tài)機協(xié)作控制裝置,狀態(tài)機協(xié)作控制裝置再次對該事件進行發(fā)派。應(yīng)用以上技術(shù)方案,可以在一個狀態(tài)機系統(tǒng)中,通過多個簡單狀態(tài)機的協(xié)作來實現(xiàn)復(fù)雜狀態(tài)機的功能,狀態(tài)機系統(tǒng)運行出現(xiàn)問題時,可以分別針對每個簡單狀態(tài)機進行分析,從而簡化狀態(tài)機設(shè)計,更有利于快速排查系統(tǒng)問題。此外,與單一狀態(tài)機相比,多個狀態(tài)機的協(xié)作可以實現(xiàn)更為豐富的狀態(tài)機語意,具有更強的表達能力。
為了更清楚地說明本申請實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請中記載的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本申請實施例狀態(tài)機系統(tǒng)的結(jié)構(gòu)示意圖;圖2為本申請實施例狀態(tài)機協(xié)作控制方法的流程圖;圖3為本申請實施例狀態(tài)機協(xié)作控制裝置的結(jié)構(gòu)示意圖;圖4為本申請實施例狀態(tài)機父子模式協(xié)作關(guān)系的示意圖;圖5為本申請實施例狀態(tài)機瀑布模式協(xié)作關(guān)系的示意圖;圖6為本申請實施例狀態(tài)機嵌套模式協(xié)作關(guān)系的示意圖;圖7為本申請實施例狀態(tài)機通知模式協(xié)作關(guān)系的示意圖;圖8為本申請實施例狀態(tài)機同步模式協(xié)作關(guān)系的示意圖。
具體實施例方式為了使本技術(shù)領(lǐng)域的人員更好地理解本申請中的技術(shù)方案,下面將結(jié)合本申請實施例中的附圖,對本申請實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分實施例,而不是全部的實施例。基于本申請中的實施例,本領(lǐng)域普通技術(shù)人員所獲得的所有其他實施例,都應(yīng)當(dāng)屬于本申請保護的范圍。首先對本申請實施例所提供的狀態(tài)機系統(tǒng)進行說明,參見圖1所示,該系統(tǒng)包括
狀態(tài)機協(xié)作控制裝置100和多個狀態(tài)機200,其中,狀態(tài)機1、狀態(tài)機2......狀態(tài)機η分別
具有不同的狀態(tài)機定義(狀態(tài)圖)。在現(xiàn)有技術(shù)中的狀態(tài)機系統(tǒng)中,一個系統(tǒng)中可以有多個狀態(tài)機,每個狀態(tài)機可以創(chuàng)建多個狀態(tài)機實例。但是同一系統(tǒng)內(nèi)部各個狀態(tài)機實例之間是完全分離的,無法進行任何交互,因此無法實現(xiàn)同一系統(tǒng)內(nèi)部各個狀態(tài)機之間的協(xié)作。本申請實施例所提供的方案,在現(xiàn)有狀態(tài)機系統(tǒng)的基礎(chǔ)上增加了狀態(tài)機協(xié)作控制裝置,以實現(xiàn)一個狀態(tài)機系統(tǒng)中多個狀態(tài)機的協(xié)作。下面對本申請實施例狀態(tài)機協(xié)作控制方法進行說明,參見圖1所示,包括以下步驟S101,狀態(tài)機協(xié)作控制裝置接收待發(fā)派事件;其中,待發(fā)派事件可以是系統(tǒng)外部向系統(tǒng)輸入的事件,也可以是系統(tǒng)內(nèi)部的狀態(tài)機實例所輸出的事件。S102,狀態(tài)機協(xié)作控制裝置判斷所述待發(fā)派事件是否具有指定接收的狀態(tài)機實例,如果是,執(zhí)行S103,如果否,執(zhí)行S104 ;有些事件是針對特定狀態(tài)機實例的事件,在這類事件中,會攜帶一個接收者的標(biāo)識,指定接收該事件的狀態(tài)機實例。狀態(tài)機協(xié)作控制裝置判斷所接收的發(fā)派事件是否具有指定接收的狀態(tài)機實例,如果是,執(zhí)行S103,否則執(zhí)行S104 ;S103,狀態(tài)機協(xié)作控制裝置將所述待發(fā)派事件發(fā)送至所述指定接收的狀態(tài)機實例;對于攜帶接收者標(biāo)識的待發(fā)送事件,狀態(tài)機協(xié)作控制裝置根據(jù)該標(biāo)識,將待發(fā)派事件發(fā)送至指定接收的狀態(tài)機實例。其中,接收者標(biāo)識所指定接收的狀態(tài)機實例可能是一個或多個。S104,狀態(tài)機協(xié)作控制裝置將所述待發(fā)派事件發(fā)送至所述系統(tǒng)內(nèi)部的所有狀態(tài)機實例。如果待發(fā)送事件中沒有攜帶接收者標(biāo)識,說明該事件不是針對特定狀態(tài)機實例的事件,這種情況下,狀態(tài)機協(xié)作控制裝置將待發(fā)派事件發(fā)送至所述系統(tǒng)內(nèi)部的所有狀態(tài)機實例。步驟S103或S104執(zhí)行完畢之后,系統(tǒng)內(nèi)將有一個或多個狀態(tài)機實例接收到了待發(fā)送事件。這些狀態(tài)機實例可能是由相同狀態(tài)機所創(chuàng)建,也可能是由不同狀態(tài)機所創(chuàng)建。每個狀態(tài)機實例根據(jù)自身的狀態(tài)機定義運行,具體到某一具體的狀態(tài)機實例而言,待發(fā)送事件可能會導(dǎo)致自身的狀態(tài)發(fā)生遷移,在發(fā)生狀態(tài)遷移的情況下,還可能進一步有新的輸出事件,如果所述待發(fā)派事件觸發(fā)某一狀態(tài)機實例的發(fā)生狀態(tài)轉(zhuǎn)移并輸出新的事件,則該狀態(tài)機實例將輸出事件發(fā)送給狀態(tài)機協(xié)作控制裝置,狀態(tài)機協(xié)作控制裝置將該事件作為新的待發(fā)派事件,重新執(zhí)行S101-S104。本申請實施例所提供的方案,在現(xiàn)有狀態(tài)機系統(tǒng)的基礎(chǔ)上增加了狀態(tài)機協(xié)作控制裝置,由裝置負責(zé)系統(tǒng)內(nèi)事件的統(tǒng)一發(fā)派,如果系統(tǒng)內(nèi)某個狀態(tài)機實例有輸出事件,則該狀態(tài)機實例將輸出事件反饋至狀態(tài)機協(xié)作控制裝置,狀態(tài)機協(xié)作控制裝置對該事件再次進行
5發(fā)派。通過以上方式,可以實現(xiàn)一個狀態(tài)機系統(tǒng)中多個狀態(tài)機的協(xié)作。本申請實施例所提供的方案,可以使?fàn)顟B(tài)機系統(tǒng)支持模塊化設(shè)計,簡化單一狀態(tài)機復(fù)雜度,減少錯誤機會,并且實現(xiàn)對錯誤的快速排查。此外,由于單一狀態(tài)機無法遞歸,只能實現(xiàn)Regular Expression(正則表達式) 的語法,而狀態(tài)機之間互相調(diào)用可以達到遞歸的效果,從而實現(xiàn)Backus-Naur Form(巴克斯-諾爾范式)的語法。因此,應(yīng)用本申請實施例所提供的方案,多個狀態(tài)機的協(xié)作可以實現(xiàn)更為豐富的狀態(tài)機語意,具有更強的表達能力。通過以上的實施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本申請可借助軟件加必需的通用硬件平臺的方式來實現(xiàn)?;谶@樣的理解,本申請的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品可以存儲在存儲介質(zhì)中,如ROM/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設(shè)備 (可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請各個實施例或者實施例的某些部分所述的方法。相應(yīng)于上面的方法實施例,本申請還提供一種狀態(tài)機協(xié)作控制裝置,參見圖3所示,該裝置包括接收單元301,用于接收待發(fā)派事件,判斷所述待發(fā)派事件是否具有指定接收的狀態(tài)機實例;所述待發(fā)派事件包括系統(tǒng)外部向系統(tǒng)輸入的事件、或系統(tǒng)內(nèi)部的狀態(tài)機實例所輸出的事件;第一發(fā)送單元302,用于在所述接收單元的判斷結(jié)果為是時,將所述待發(fā)派事件發(fā)送至所述指定接收的狀態(tài)機實例;第二發(fā)送單元303,用于在所述接收單元的判斷結(jié)果為否時,將所述待發(fā)派事件發(fā)送至所述系統(tǒng)中的所有狀態(tài)機實例。其中,所述狀態(tài)機系統(tǒng)內(nèi)部的狀態(tài)實例為相同狀態(tài)機或不同狀態(tài)機創(chuàng)建的實例。為了描述的方便,描述以上裝置時以功能分為各種單元分別描述。當(dāng)然,在實施本申請時可以把各單元的功能在同一個或多個軟件和/或硬件中實現(xiàn)。本說明書中的各個實施例均采用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于裝置或系統(tǒng)實施例而言,由于其基本相似于方法實施例,所以描述得比較簡單,相關(guān)之處參見方法實施例的部分說明即可。以上所描述的裝置及系統(tǒng)實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。下面以兩個狀態(tài)機為例,說明應(yīng)用本申請實施例方案可以實現(xiàn)的幾種簡單協(xié)作關(guān)系參見圖4所示,狀態(tài)機實例A遷移到狀態(tài)S2之后,輸出事件觸發(fā)狀態(tài)機實例B從初態(tài)遷移到狀態(tài)Si,實現(xiàn)了狀態(tài)機實例A在運行過程中創(chuàng)建狀態(tài)機實例B,這種模式稱為父子模式。參見圖5所示,狀態(tài)機實例A遷移到終態(tài)之后,輸出事件觸發(fā)狀態(tài)機實例B從初態(tài)遷移到狀態(tài)Sl,實現(xiàn)了狀態(tài)機實例A在運行結(jié)束后創(chuàng)建狀態(tài)機實例B,這種模式稱為瀑布模式。參見圖6所示,狀態(tài)機實例A遷移到狀態(tài)S2之后,輸出事件觸發(fā)狀態(tài)機實例B從初態(tài)遷移到狀態(tài)Si,狀態(tài)機實例B遷移到終態(tài)之后,輸出事件觸發(fā)狀態(tài)機實例A從狀態(tài)S2 遷移到狀態(tài)S3,實現(xiàn)了狀態(tài)機實例A在運行過程中對狀態(tài)機實例B的調(diào)用,這種模式稱為嵌
套模式。參見圖7所示,狀態(tài)機實例A遷移到狀態(tài)S2之后,將輸出事件傳遞給狀態(tài)機實例 B,這種模式稱為通知模式。參見圖8所示,狀態(tài)機實例A遷移到狀態(tài)S2之后,將輸出事件傳遞給狀態(tài)機實例 B,同時,狀態(tài)機實例B遷移到狀態(tài)S2之后,也將輸出事件傳遞給狀態(tài)機實例A,這種模式稱為同步模式。本申請可用于眾多通用或?qū)S玫挠嬎阆到y(tǒng)環(huán)境或配置中。例如個人計算機、服務(wù)器計算機、手持設(shè)備或便攜式設(shè)備、平板型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、置頂盒、可編程的消費電子設(shè)備、網(wǎng)絡(luò)PC、小型計算機、大型計算機、包括以上任何系統(tǒng)或設(shè)備的分布式計算環(huán)境等等。本申請可以在由計算機執(zhí)行的計算機可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計算環(huán)境中實踐本申請,在這些分布式計算環(huán)境中,由通過通信網(wǎng)絡(luò)而被連接的遠程處理設(shè)備來執(zhí)行任務(wù)。在分布式計算環(huán)境中,程序模塊可以位于包括存儲設(shè)備在內(nèi)的本地和遠程計算機存儲介質(zhì)中。以上所述僅是本申請的具體實施方式
,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本申請原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應(yīng)視為本申請的保護范圍。
權(quán)利要求
1.一種狀態(tài)機協(xié)作控制方法,應(yīng)用于包括至少兩個狀態(tài)機的狀態(tài)機系統(tǒng),其特征在于, 該方法包括A.狀態(tài)機協(xié)作控制裝置接收待發(fā)派事件,判斷所述待發(fā)派事件是否具有指定接收的狀態(tài)機實例,如果是,執(zhí)行步驟B,如果否,執(zhí)行步驟C ;B.狀態(tài)機協(xié)作控制裝置將所述待發(fā)派事件發(fā)送至所述指定接收的狀態(tài)機實例,執(zhí)行步驟D;C.狀態(tài)機協(xié)作控制裝置將所述待發(fā)派事件發(fā)送至所述系統(tǒng)內(nèi)部的所有狀態(tài)機實例,執(zhí)行步驟D;D.如果所述待發(fā)派事件觸發(fā)某一系統(tǒng)內(nèi)部狀態(tài)機實例的發(fā)生狀態(tài)遷移并輸出事件,則該狀態(tài)機實例將輸出事件作為待發(fā)派事件發(fā)送至所述狀態(tài)機協(xié)作控制裝置,返回步驟A。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述待發(fā)派事件包括系統(tǒng)外部向系統(tǒng)輸入的事件、或系統(tǒng)內(nèi)部的狀態(tài)機實例所輸出的事件。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述狀態(tài)機系統(tǒng)內(nèi)部的狀態(tài)實例為相同狀態(tài)機或不同狀態(tài)機創(chuàng)建的實例。
4.一種狀態(tài)機協(xié)作控制裝置,應(yīng)用于包括至少兩個狀態(tài)機的狀態(tài)機系統(tǒng),其特征在于, 該裝置包括接收單元,用于接收待發(fā)派事件,判斷所述待發(fā)派事件是否具有指定接收的狀態(tài)機實例;所述待發(fā)派事件包括系統(tǒng)外部向系統(tǒng)輸入的事件、或系統(tǒng)內(nèi)部的狀態(tài)機實例所輸出的事件;第一發(fā)送單元,用于在所述接收單元的判斷結(jié)果為是時,將所述待發(fā)派事件發(fā)送至所述指定接收的狀態(tài)機實例;第二發(fā)送單元,用于在所述接收單元的判斷結(jié)果為否時,將所述待發(fā)派事件發(fā)送至所述系統(tǒng)中的所有狀態(tài)機實例。
5.根據(jù)權(quán)利要求4所述的裝置,其特征在于,所述狀態(tài)機系統(tǒng)內(nèi)部的狀態(tài)實例為相同狀態(tài)機或不同狀態(tài)機創(chuàng)建的實例。
6.一種狀態(tài)機系統(tǒng),其特征在于,該系統(tǒng)包括狀態(tài)機協(xié)作控制裝置和至少兩個狀態(tài)機;所述狀態(tài)機協(xié)作控制裝置,接收待發(fā)派事件,判斷所述待發(fā)派事件是否具有指定接收的狀態(tài)機實例,如果是,則將所述待發(fā)派事件發(fā)送至所述指定接收的狀態(tài)機實例,否則將所述待發(fā)派事件發(fā)送至所述系統(tǒng)內(nèi)部的所有狀態(tài)機實例;系統(tǒng)內(nèi)部狀態(tài)機所創(chuàng)建的狀態(tài)機實例,接收所述狀態(tài)機協(xié)作控制裝置發(fā)送的待發(fā)派事件,如果所述待發(fā)派事件該狀態(tài)機實例的發(fā)生狀態(tài)遷移并輸出事件,則該狀態(tài)機實例將輸出事件作為待發(fā)派事件發(fā)送至所述狀態(tài)機協(xié)作控制裝置。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述待發(fā)派事件包括系統(tǒng)外部向系統(tǒng)輸入的事件、或系統(tǒng)內(nèi)部的狀態(tài)機實例所輸出的事件。
8.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述狀態(tài)機系統(tǒng)內(nèi)部的狀態(tài)實例為相同狀態(tài)機或不同狀態(tài)機創(chuàng)建的實例。
全文摘要
本申請公開了一種狀態(tài)機協(xié)作控制方法、裝置及狀態(tài)機系統(tǒng)。一種狀態(tài)機協(xié)作控制方法包括A.狀態(tài)機協(xié)作控制裝置接收待發(fā)派事件,判斷所述待發(fā)派事件是否具有指定接收的狀態(tài)機實例,如果是,執(zhí)行步驟B,如果否,執(zhí)行步驟C;B.狀態(tài)機協(xié)作控制裝置將所述待發(fā)派事件發(fā)送至所述指定接收的狀態(tài)機實例,執(zhí)行步驟D;C.狀態(tài)機協(xié)作控制裝置將所述待發(fā)派事件發(fā)送至所述系統(tǒng)內(nèi)部的所有狀態(tài)機實例,執(zhí)行步驟D;D.如果所述待發(fā)派事件觸發(fā)某一系統(tǒng)內(nèi)部狀態(tài)機實例的發(fā)生狀態(tài)遷移并輸出事件,則該狀態(tài)機實例將輸出事件作為待發(fā)派事件發(fā)送至所述狀態(tài)機協(xié)作控制裝置,返回步驟A。應(yīng)用以上技術(shù)方案,可以通過多個簡單狀態(tài)機的協(xié)作來實現(xiàn)復(fù)雜狀態(tài)機的功能。
文檔編號G06F11/14GK102486743SQ20101056891
公開日2012年6月6日 申請日期2010年12月1日 優(yōu)先權(quán)日2010年12月1日
發(fā)明者蔡學(xué)鏞 申請人:阿里巴巴集團控股有限公司