基于委托的分散式状态机及其处理方法发明专利.docxVIP

基于委托的分散式状态机及其处理方法发明专利.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于委托的分散式状态机及其处理方法发明专利.docx

基于委托的分散式状态机及其处理方法 技术领域 本发明涉及一种状态机及其处理方法,尤其涉及一种基于委托的分散式状态机及 其处理方法。 背景技术 目前,数字化X射线摄影(Digital Radiography,DR)系统软件的检查和数字图像 采集工作流涉及大量的系统状态切换,而且某一时刻同时的系统性状包涵各个方面的内 容。当触发状态改变的事件发生时,某一个或某几个方面的状态会改变。导致状态切换的事 件达到数十种,从而导致工作流变得很复杂。此外,且随着需求的变化,事件种类和相应的 切换前后状态也会改变。DR系统软件的状态机需要能够很好地应对大量种类的状态和事 件、事件和状态种类的增加和减少、事件处理方式和切换前后状态改变的需求。 现有的状态机每个时刻中只有1个状态表示系统各个方面的性状,如图1所示。这 导致状态机所定义的状态个数为系统实际每个方面性状的所有可能取值的数量的乘积。导 致状态机需要定义大量的状态,增加了复杂度。 现有状态机有1个单独的集中式事件处理单元,这个集中式事件处理单元根据当 前的状态以及事件种类是否匹配决定是否响应事件、如何处理事件、如何切换状态。因此集 中式事件处理单元必须拥有所有的事件列表、所有的状态列表、依赖特定事件和特定状态 的处理逻辑列表、还要具备记录当前状态的功能,如图2所示。(这导致这种集中式事件处理 单元极度膨胀、而且由于大量逻辑耦合在集中式事件处理单元之中,一旦需求发生改变,扩 展、删减或改变相应功能都很困难。 发明内容 本发明所要解决的技术问题是提供一种基于委托的分散式状态机及其处理方法, 能够简化状态机的设置和切换,并且易于扩展控制系统状态切换的功能动作模块。 本发明为解决上述技术问题而采用的技术方案是提供一种基于委托的分散式状 态机的处理方法,包括如下步骤:a)对系统状态按主从关系进行分类,并采用至少两个状态 标识记录系统当前状态;b)提供多个相互独立的局部处理逻辑模块,局部处理逻辑模块的 实现方式为:将处理逻辑分成若干代码片段,分别放入与之密切相关的某个子模块中;c)采 用全局委托列表的方式接受触发事件,并调用所述步骤b)中相应的局部处理逻辑模块响应 所述触发事件;d)如果系统状态发生改变,系统切换至下一状态。 上述的分散式状态机的处理方法,其中,所述步骤a)中系统状态分成多个主状态, 所述每个主状态按主从关系分成多个一级子状态。 上述的分散式状态机的处理方法,其中,所述一级子状态按主从关系进一步分成 多个二级子状态。 上述的分散式状态机的处理方法,其中,所述触发事件包括外部事件、子状态销毁 事件、子状态切换事件或子状态产生事件。 本发明为解决上述技术问题还提供基于委托的分散式状态机,其中,包括:状态机 主模块,用于对系统状态按主从关系进行分类,同时采用至少两个状态标识记录系统当前 状态,并控制系统状态切换;状态集,用于提供多个相互独立的局部处理逻辑模块响应触发 事件,局部处理逻辑模块的实现方式为:将处理逻辑分成若干代码片段,分别放入与之密切 相关的某个子模块中;全局委托列表,用于接受触发事件,并调用状态集中相应的局部处理 逻辑模块。 上述的基于委托的分散式状态机,其中,还包括插件集,用于提供多个相互独立的 插件逻辑处理模块,所述插件逻辑处理模块的处理逻辑注册到所述全局委托列表中,供状 态机主模块和状态集调用。 上述的基于委托的分散式状态机,其中,所述插件逻辑处理模块根据配置文件进 行加载或卸载,加载后的插件逻辑处理模块向所述全局委托列表进行注册登记生成注册登 记信息,所述全局委托列表接受触发事件后根据所述注册登记信息调用插件集中相应的插 件逻辑处理模块。 上述的基于委托的分散式状态机,其中,所述系统状态分成多个主状态,所述主状 态按主从关系分成多个一级子状态。 上述的基于委托的分散式状态机,其中,所述状态机主模块记录所述系统主状态 标识和一级子状态标识。 上述的基于委托的分散式状态机,其中,所述状态机主模块记录系统主状态标识, 所述主状态记录该主状态下的一级子状态标识。 本发明对比现有技术有如下的有益效果:本发明提供的基于委托的分散式状态机 及其处理方法,对系统状态按主从关系进行分类,将主状态分成多个子状态,子状态表示状 态的某一具体值。相应,状态机中某时刻同时存在的状态数量为相同数量的主状态和子状 态,共同表示系统某时刻的状态,而定义的状态个数为系统实际每种类型状态的所有可能 取值的数量及状态类型数量的总合,大大降低了所需定义的状态数,另外,本发明取消了集 中式事件处理单元,改由维护一个全局的委托列表和多个拥有局部处理逻辑的主模块、状 态集、插件集等子模块。将处理逻辑分成若干代码片段,分别放入与之密切相关的某个子模 块中,状态机主模块和状态集中的逻辑可以直接相互调用,而插件集则将自身

文档评论(0)

哒哒 + 关注
实名认证
文档贡献者

哒哒

1亿VIP精品文档

相关文档