轮班结束时暂停处理

Pause processing on end of shift

我有一个容量为 1 的资源池,它具有已定义的 on/off 计划。汇编程序块占用资源然后延迟它。如果 on/off 计划在汇编程序延迟中有代理时关闭资源,我找到了两个选项: 1. 资源一直停留到延迟结束,资源被释放。 2.立即踢出代理,释放资源

None 确实符合真实世界的情况。如果我轮班结束,除非绝对必要,否则可能没有人会完成他的工作。也不会有人扔掉一个半成品。

如果工作人员只是暂停处理并在第二天继续处理同一个代理,那就更现实了。

我可能只是缺少一些设置。有没有一种简单的方法可以实现这种行为?

我不知道您是如何找到这些选项的,但正确的做法是在汇编程序块中使用抢占选项:

要完成您想要的操作,您必须使用 "wait for original resource" 选项,或使用 seize any resource 选项(结果相同,因为您只有一个资源)。任务抢占策略定义了当轮班结束或更高优先级的任务占用资源时您的代理会发生什么。