Кварц против "реактивных расширений" - PullRequest
5 голосов
/ 18 мая 2011

Я ищу библиотеку расписаний для C #, и долгое время я думал, что "единственным" вариантом является Quartz.NET, который достаточно надежен и прекрасно работает.Но когда я нашел «Reactive Extensions» (RX - http://msdn.microsoft.com/en-us/data/gg577609)), я понял, что он также может выполнять операции, связанные с временем, и имеет собственный интерфейс .NET.

Каковы ограниченияRx в терминах операций, связанных со временем? Мне нужно многократно запускать задачи через определенный промежуток времени, после какого-то периода времени.

И есть ли существенные различия? (в терминахпроизводительности и т. д. - например, по моему опыту, кварц зависает, когда запланировано более 1500+ задач)

1 Ответ

10 голосов
/ 18 мая 2011

Два не очень сопоставимы.Да, с обоими вы можете «запланировать» задачу на определенное время, начиная с этого момента, но на этом сходство заканчивается.

Кварц - это комплексное решение для планирования с огромным диапазоном параметров триггера и сохраняет задачив файл или базу данных.

Реактивные расширения - отличный способ справиться с потоковыми данными или событиями, и да, есть варианты для регулирования или задержки на периоды времени.

Если вы ищетечтобы планировать задачи, то Quartz, вероятно, является правильным вариантом.Если вам нужна своего рода структура событий с множеством вариантов буферизации, задержки и объединения, тогда Rx, возможно, более уместен.

...