AnyLogic中ResourcePool模块运行时容量无法更改的原因?
问题原因解析
- ResourcePool的初始容量仅在模型启动时读取变量值完成初始化,模块内部会独立维护一个容量状态值,外部修改原变量不会自动同步到这个内部状态。
- 定义初始容量的变量只是启动时的参数载体,ResourcePool不会持续监听该变量的变化。事件修改变量后,模块缺少自动更新容量的触发逻辑,因此实际可用资源数不会随之改变。
- 若要动态更新资源池容量,不能仅修改初始变量,必须调用ResourcePool的
set_capacity()方法(例如yourResourcePool.set_capacity(newVariableValue)),直接修改模块内部维护的容量状态,才能让资源池的实际容量同步更新。
内容的提问来源于stack exchange,提问作者Aqeel Tariq
相关产品推荐
相关产品推荐

