"On exit" 与 Anylogic 中的 "On at exit"
"On exit" vs "On at exit" in Anylogic
Anylogic Process Modeling Library 中很少有像“Source”这样的块具有“On exit”和“On at exit”这样的操作。两者有什么区别?
我试图创建一个简单的流程:
source -> SelectOutput -> Service -> Sink
源块创建的代理有一个布尔值 属性“is_vip”。
当我在源的“退出时”操作中将 agent.is_vip 分配给 true 或 false 时,路由不起作用,但是当我将逻辑移动到源块的“退出时打开”时,路由开始工作.
这里没有问题,但你是对的,这就是盒子之间的区别。在代理退出块之前评估 OnAtExit。 OnExit 在它离开后被评估。
如果像 SelectOutput 这样的下游块依赖于一些上游更改,如果在上游 OnExit 中完成,则不会注册它们,因为代理已经在 SelectOutput 块中。
使用 OnAtExit 总是更安全
Anylogic Process Modeling Library 中很少有像“Source”这样的块具有“On exit”和“On at exit”这样的操作。两者有什么区别?
我试图创建一个简单的流程:
source -> SelectOutput -> Service -> Sink
源块创建的代理有一个布尔值 属性“is_vip”。 当我在源的“退出时”操作中将 agent.is_vip 分配给 true 或 false 时,路由不起作用,但是当我将逻辑移动到源块的“退出时打开”时,路由开始工作.
这里没有问题,但你是对的,这就是盒子之间的区别。在代理退出块之前评估 OnAtExit。 OnExit 在它离开后被评估。
如果像 SelectOutput 这样的下游块依赖于一些上游更改,如果在上游 OnExit 中完成,则不会注册它们,因为代理已经在 SelectOutput 块中。
使用 OnAtExit 总是更安全