Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
推荐一个C#任务调度库_C#_Azure_Scheduled Tasks - Fatal编程技术网

推荐一个C#任务调度库

推荐一个C#任务调度库,c#,azure,scheduled-tasks,C#,Azure,Scheduled Tasks,我正在寻找一个C#库,最好是开源的,它可以让我灵活地安排任务。具体来说,我应该能够安排每N个时间单位运行一次,以及“每个工作日XXXX时间”或“每个星期一XXXX时间”。更多的功能会更好,但不是必需的。这是我想在Azure WorkerRole中使用的东西,它会立即排除Windows计划任务、“at”、“Cron”以及任何需要安装和/或GUI才能运行的第三方应用程序。我在找一个图书馆 请参见关于Codeproject的信息。 “Quartz.NET是一个非常专用(原文如此!)的开放源码Java作

我正在寻找一个C#库,最好是开源的,它可以让我灵活地安排任务。具体来说,我应该能够安排每N个时间单位运行一次,以及“每个工作日XXXX时间”或“每个星期一XXXX时间”。更多的功能会更好,但不是必需的。这是我想在Azure WorkerRole中使用的东西,它会立即排除Windows计划任务、“at”、“Cron”以及任何需要安装和/或GUI才能运行的第三方应用程序。我在找一个图书馆

请参见关于Codeproject的信息。

“Quartz.NET是一个非常专用(原文如此!)的开放源码Java作业调度框架Quartz的端口。”


PS:明智的话,不要试图在工作时导航到quartz.net;-)

我在这个问题中读到了。这是一个C#库,允许灵活的调度。

Quartz似乎是一个不错的解决方案

我最近(今年)不得不为我正在从事的一个主要项目编写一个自定义任务调度程序。他们也不能使用Windows任务调度器,还希望能够通过上载程序集(通过ASP.net网站)执行自定义功能,并让服务在指定时间执行相应的任务

老实说,这件事有点像噩梦(设计和实现的难度不大,但调度逻辑有点拖沓)


我强烈建议在决定“自己动手”(也就是重新发明轮子!)之前,用尽所有其他方法。

我在Java时代使用石英,效果非常好。我现在正在使用它进行一些.Net工作,它的效果甚至更好(当然,在那里有很多年的时间,它才稳定下来)。因此,我当然支持这方面的建议


另一件有趣的事情是,我刚刚开始使用.NET4.0中的新System.Threading.Tasks。我刚刚使用任务来并行化工作,它充分利用了多核/处理器的优势。我注意到其中有一个名为TaskScheduler的类,我没有详细研究过,但它有QueueTask、DeQueTask等方法。至少值得研究一下。

有一个新的基于云的调度器,名为

Scheduler允许开发人员通过 在简单或复杂的CRON计划上运行的HTTP Webhook


比quartz更像这样,但需要知道的是,它是否将长期受支持。Enterprise Reasions.quartz.net是否使用windows调度器或计时器进行调度?但它不支持开箱即用的异步/等待。它有一个严重的错误,如果池中有20个任务和5个线程,它会更频繁地执行前几个任务,并且latst TSK只在几分钟内执行一次,而不是我要求的每15秒执行一次。正如@michael sync所提到的,它不支持async/await。如果您在2017年来到这里,请使用HangFire。HangFire是一种在.NET和.NET核心应用程序中执行计划任务和后台处理的简单方法。不需要Windows服务或单独的进程。还附带了一个漂亮的仪表板用户界面。由持久存储支持。开放和免费的商业用途。相关SO Q&A:查看2014年推出的本机可用Azure调度器-