操作评估的默认顺序由对象上的操作依赖关系确定。最常见的情况如下: 对象 1 --> ReadDep1 --> Action1 --> WriteDep1 --> Object2 --> ReadDep2 --> Action2 --> WriteDep2 --> Object3. 在本例中,操作 1 修改 Object2,操作 2 使用对象 2。请注意,有两个(或更多)依赖项附加到 Object2,并且 Action1 拥有的写入依赖项先于操作 2 拥有的读取依赖项。它建立了在评估 Action2 之前需要首先评估 Action1 的顺序,因为 Action2 期望对象处于 Action1 修改它所达到的状态。 另一种情况是,当有多个操作修改同一对象时。在这种情况下,对象通过多个操作进行多次修改,类似于基于特征的参数化建模系统中已知的特征历史记录。 操作 1 --> WriteDep --> 对象(状态 1) 操作2 <-- 读取<-- 对象 Action2 --> WriteDep --> Object (State2) 在这种情况下,对 Action2 的评估还要求对 Action1 进行评估,以便将对象引入状态 1,因为在评估 Action2 时,它期望对象处于状态 1。 网络的评估将忽略子网等级。通过评估尽可能多的子网操作来尝试评估子网。如果无法评估某些子网操作,则暂停对该子网的评估,并评估更高级别的网络的其他操作/子网;对其他操作的评估可以启用对挂起子网络中的操作的评估。然后恢复对挂起子网络的评估。重复此过程,直到成功评估所有子网中的所有操作。每个子网仅在评估其所有操作后才会标记为已评估。最后,在评估其所有操作后,整个网络被标记为已评估。 |
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-1-8 19:33
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.