如何在anylogic中设置ResourcePool队列的优先级

时间:2019-11-05 19:44:03

标签: java resources modeling anylogic

我有一系列需要相同资源的服务(一个工作人员)。我希望工作人员遵循该顺序,而不是随机选择要运行的服务。如何设置ResourcePool队列的优先级? 谢谢您的时间

2 个答案:

答案 0 :(得分:0)

一种方法:

  • 在工作进程中创建Service类型的变量“ myPreviousService”。初始值设置为空
  • 在每个服务中,应用“定制资源选择”选项,并检查要被扣押的单元先前是否已在所需的先前服务对象中工作(在屏幕中,我设置了“ service3”,并要求工作人员进行工作) “ service2”之前)
  • (显然,只有第一个服务不需要此要求)
  • 在每个服务的“抢占单位”中,存储unit.myPreviousService = self,以使工作人员能够记住

希望这会有所帮助

enter image description here

答案 1 :(得分:0)

通常对于这些情况,使用服务不是正确的方法,相反,您应该在开始时使用seize块,使代理遍历所有服务(由于资源已被占用,现在将延迟显示) ),当您的工作人员完成所有操作后,您就可以使用释放块了。

请记住,服务=抓住+延迟+释放

仅当您的工作人员需要按顺序执行服务时才使用服务,但这与他正在处理的代理无关(它将与本杰明的解决方案一起使用)