基于的加油站
加油站基于我试图让模型做以下事情的那一天:我有一个带队列的5服务区。我需要模型为每个服务块分配一天,即在第1天填充第一个服务块。然后在第二天填充服务区块2,在第三天填充第三服务区块,在第四天填充第四服务区块,并在第五天填充第五服务区块。一旦第五个服务块完成,它将从服务块1再次开始。
我尝试通过集合使用exit-and enter块在5服务块和以下代码之间进行迭代:
double minSize = min(collection, sp -> (sp.Curing_Drying1.size()));
return findFirst(collection, sp -> (sp.Curing_Drying1.size()) == minSize).enter;
请参阅所附图片以获取进一步的说明。
队列和延迟退出并进入收集
当前的模型没有将每个服务或延迟块分配给特定的一天。关于如何按顺序分配每个服务块工作一天,可以提供任何建议吗。
那么您想在给定的日子内向subProcess
实例发送代理吗?
您可以将int参数allowedDay
添加到SubProcess
中。将每个值设置为0-4。
然后在您的exit
块中,决定使用当前型号时间将代理发送到哪里:
for (SubProcess currProcess : collection) {
if (currProcess.allowedDay == (int)time(DAY)) {
currProcess.enter.take(agent);
}
}
诀窍是(int)time(DAY)
,它将当前模型时间转换为一天的数字。
显然,要确保正确处理错误。