我有一项服务,要求在调用特定事件10分钟后对实体状态执行操作。在10分钟的等待期间,它必须监听将完全停止此事件的其他事件,以便不执行该操作。 在任何时间点,都可能有多个实体实例要处理。
是否有任何关于创建此服务的可能实施方式的建议?
答案 0 :(得分:0)
我在我的一个处理用户状态管理的项目中有类似的东西。粗略的想法是这样的:
1你有一个你需要的刻度精度计时器(我使用15 第二)
2某些输入事件会触发对实体的监控,并在添加时间时将实体置于执行队列中
3如果发生任何取消事件>从执行队列中删除相应的实体
4 On timer ticks检查executionQueue中每个iteam的添加时间,并为那里的实体执行操作10分钟
PS。 您可能需要考虑使用多线程/ TPL来执行操作。