在 AnyLogic v7 中,我想使用一个事件在每个工作日开始时将所有代理重置到流程中的某个位置。我创建了事件,并有一个可以循环所有代理的循环,但我不确定需要什么属性或方法才能将代理实际重新定位到特定的延迟 block 。谢谢!
最佳答案
- 放置一个
Enter
block 并将其与反射(reflect)“某个地点”的 block 连接起来。 - 在代理 Canvas 上,调用如下代码:
main.enter.take(currenBlock().remove(this));
currentBlock().remove(this)
从当前流程图 block 中删除代理本身并返回它。 enter.take(...)
在流程图中注入(inject)代理,Enter
block 立即将代理转发到下一个 block 。它的工作原理类似于 Source
block ,但这里它注入(inject)已经存在的代理,而 Source
创建新的代理。主要的。是对包含流程图的顶级代理的引用。
关于java - 在 AnyLogic v7 中,如何通过 java 更改代理在流程中的位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41008236/