【问题标题】:Can Initial node have two processes at the same time?Initial node 可以同时有两个进程吗?
【发布时间】:2017-10-29 20:48:04
【问题描述】:

您好,我正在使用 UML 图,我想知道一个类是否可以在初始节点同时具有两个进程?

【问题讨论】:

    标签: uml activity-diagram


    【解决方案1】:

    当然可以。并发进程是否可能取决于操作系统和您使用的语言。但从纯对象的角度来看,没有什么能阻碍您为单个类建模并发进程。

    请注意,即使是像 Modula-2(来自 80 年代)这样相当古老的语言也支持并发进程作为本地语言结构。

    【讨论】:

      【解决方案2】:

      您还可以在以下架构中建模。开始时有一个隐式分叉,在 CallOperation5 处有一个隐式连接。

      它更容易“绘制”,相反的部分是你的读者必须熟悉 UML。

      【讨论】:

      • 这不正确。没有“隐式分叉”!只有一个令牌正在进行中,它会以何种方式进行尚不确定。查找 UML“规范”(笑)。
      • :) 我看了看:“在所有传入的 ControlFlow(如果有)都提供令牌之前,ExecutableNode 不应执行。也就是说,传入的控制流上有一个隐式连接。特定类型的 ExecutableNode 可能在节点可以执行之前必须满足其他先决条件。”
      • 这不是连接,而是初始拆分。这只能由分叉节点完成。只有这样才能从一个令牌创建多个令牌。
      • 阅读第 1 页。 385 初始节点。里面只有一个令牌。一个代币只能乘以一个分叉(阅读下一页)。
      • 事实上,有一个隐式分叉:当一个 ExecutableNode 完成执行时,表示该执行的控制令牌从 ExecutableNode 中删除,并且控制令牌在 ExecutableNode 的所有传出 ControlFlow 上提供。也就是说,存在从 ExecutableNode 到其传出 ControlFlows 的控制流的隐式分支。但是对于 Excutable 节点,初始节点不是可执行文件。所以我需要在这一点上更正答案。
      猜你喜欢
      • 2012-10-09
      • 1970-01-01
      • 2022-10-20
      • 2011-07-29
      • 2015-02-02
      • 1970-01-01
      • 2017-08-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多