【问题标题】:Orthogonal state interpretation正交状态解释
【发布时间】:2013-07-25 14:26:40
【问题描述】:

下面引用UML Reference Manual的句子是什么意思?

When an orthogonal state is entered, the number of control threads increases as a direct substate in each orthogonal region becomes active.

When the orthogonal state is exited, the number of control threads decreases.

【问题讨论】:

  • 您能接受答案吗?

标签: uml state interpretation


【解决方案1】:

这是 UML 规范的一个复杂部分。在最简单的情况下,当您进入包含正交区域的状态时,每个正交区域中的初始伪状态实质上会启动一个单独的控制线程。关于这些线程如何使用事件以及线程如何重新连接在一起,有很多复杂的规则。

但是,根据我强烈推荐的方法学家 (H. S. Lahman) 的说法,你真的不应该使用比普通的旧 Moore state machines 更多的东西。有关为什么应该使用 Moore 状态机(可以在 UML 中完美建模)而不是 Mealy 或 Harel 状态机的更多信息,请参阅 Lahman's book 中的 this excerpt。有关 Moore 和 Mealy 状态机之间区别的更多信息,请参阅 this StackExchange question.

【讨论】:

  • ,谢谢您的推荐,您的好意能不能请您解释一下为什么进入正交状态时控制线程数增加,而退出正交状态时控制线程数减少?
  • 因为我想不通
  • 我不确定有什么不清楚的地方,因为我不知道你的背景。每个正交区域都有自己的当前子状态。每个子状态可以同时执行行为,包括由传入事件触发的行为。如果每个状态都运行不同的长时间运行行为,包括等待磁盘 I/O 之类的东西,这可能允许 CPU 同时在其他正交区域内做有用的工作。
猜你喜欢
  • 2011-06-19
  • 2021-01-12
  • 2013-02-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-05
  • 2010-12-04
相关资源
最近更新 更多