《WF编程系列之46》第七章节,如何实现事件驱动工作流?

2026-05-25 08:050阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计5897个文字,预计阅读时间需要24分钟。

《WF编程系列之46》第七章节,如何实现事件驱动工作流?

在创建新的工作流时,需做出一项重要选择:我们要建立的工作流究竟是一个顺序工作流,还是一个状态机工作流?WF提供了两种即开即用的工作流执行类型。

在创建一个新的工作流时,需要做出一项重要的抉择:我们要创建的工作流究竟是一个顺序工作流,还是一个状态机工作流?WF提供了两种“即开即用的”(out of the box)工作流执行类型。为了回答这个问题,我们不得不决定谁在受控。

顺序工作流是一种预知的工作流。执行路径可能是分支、循环、或等待一个外部事件的发生,但是最终顺序工作流将会使用活动、条件和我们在前面章节所提供的必不可少的匹配规则。工作流在进程中受控。

状态机工作流是一种事件驱动的工作流。就是说,状态机工作流依赖于额外的事件来驱动工作流的完成。我们定义了工作流的合法状态,以及在这些状态之间的合法迁移。工作流总是在其中的一个状态中,并且不得不在迁移到一个新状态之前等待事件的到达。一般来说,重要的选择发生在工作流之外。状态机定义了要遵循的结构,但控制是属于外部世界的。

当我们能对工作流内部中的大多数决策进行编码时,我们会使用顺序工作流。当决策发生在工作流外部时,我们要使用状态机工作流。在本章中,我们将详细讨论状态机工作流是如何工作的。

7.1 什么是状态机?

状态机在计算机科学中已经应用了很长一段时间。你将会看到它们在反应系统(reactive system)中尤其流行,就像用于视频游戏和机器人这样的软件。设计者使用状态机为使用状态、事件和迁移的系统建模。

State,代表一种情形或环境。在下面的截图中,有一个状态机并具备两个状态:Power On状态和Power Off状态。状态机总是这两个状态中的一个。

事件(event),是一些外部的刺激。

阅读全文

本文共计5897个文字,预计阅读时间需要24分钟。

《WF编程系列之46》第七章节,如何实现事件驱动工作流?

在创建新的工作流时,需做出一项重要选择:我们要建立的工作流究竟是一个顺序工作流,还是一个状态机工作流?WF提供了两种即开即用的工作流执行类型。

在创建一个新的工作流时,需要做出一项重要的抉择:我们要创建的工作流究竟是一个顺序工作流,还是一个状态机工作流?WF提供了两种“即开即用的”(out of the box)工作流执行类型。为了回答这个问题,我们不得不决定谁在受控。

顺序工作流是一种预知的工作流。执行路径可能是分支、循环、或等待一个外部事件的发生,但是最终顺序工作流将会使用活动、条件和我们在前面章节所提供的必不可少的匹配规则。工作流在进程中受控。

状态机工作流是一种事件驱动的工作流。就是说,状态机工作流依赖于额外的事件来驱动工作流的完成。我们定义了工作流的合法状态,以及在这些状态之间的合法迁移。工作流总是在其中的一个状态中,并且不得不在迁移到一个新状态之前等待事件的到达。一般来说,重要的选择发生在工作流之外。状态机定义了要遵循的结构,但控制是属于外部世界的。

当我们能对工作流内部中的大多数决策进行编码时,我们会使用顺序工作流。当决策发生在工作流外部时,我们要使用状态机工作流。在本章中,我们将详细讨论状态机工作流是如何工作的。

7.1 什么是状态机?

状态机在计算机科学中已经应用了很长一段时间。你将会看到它们在反应系统(reactive system)中尤其流行,就像用于视频游戏和机器人这样的软件。设计者使用状态机为使用状态、事件和迁移的系统建模。

State,代表一种情形或环境。在下面的截图中,有一个状态机并具备两个状态:Power On状态和Power Off状态。状态机总是这两个状态中的一个。

事件(event),是一些外部的刺激。

阅读全文