我正在寻找 C# 的调度库,很长一段时间我都认为“唯一”的选择是 Quartz.NET,它非常强大并且工作得很好。但是当我找到“Reactive Extensions”(RX - http://msdn.microsoft.com/en-us/data/gg577609)时,我意识到它也可以执行与时间相关的操作并且具有原生 .NET 前端。
Rx 在时间相关操作方面的限制是什么?我需要在特定时间间隔内、大约一段时间后重复触发任务。
有什么重大差异吗?(在性能等方面 - 例如,根据我的经验,当计划的任务超过 1500 个时,Quartz 会卡住)
最佳答案
两者没有可比性。是的,您可以使用两者“安排”任务在从现在开始的特定时间跨度内发生,但相似之处仅此而已。
Quartz 是一个完整的调度解决方案,具有范围广泛的触发器选项,并将任务持久保存到文件或数据库中。
响应式扩展是处理流式数据或事件的好方法,是的,可以选择节流或延迟一段时间。
如果您希望安排任务,那么 Quartz 可能是正确的选择。如果您需要一种带有大量缓冲、延迟和连接选项的事件框架,那么 Rx 可能更合适。
关于c# - quartz 与 "Reactive Extensions",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6036581/