用于定时操作的C#库

时间:2010-12-13 00:05:00

标签: c# sequential orchestration

你知道任何允许你对一系列动作进行排序的C#库,即。每个动作在前一个动作完成后执行,或者在特定时间间隔发生后更好。

谢谢。

3 个答案:

答案 0 :(得分:2)

时间尝试quartz.net。用于同步动作,使用例如。事件,waithandlesMonitor.Wait()Monitor.Pulse() ...

否则你可以处理一系列动作,例如

var methods = new List<Func>
{
    FooMethod1,
    FooMethod2
}
foreach (var method in methods)
{
    method.Invoke();
}

但这只是有意义的,如果你没有主持人方法(顺序处理)或你的方法不应该彼此了解。

答案 1 :(得分:2)

查看http://msdn.microsoft.com/en-us/library/dd537609.aspx

  

Task.ContinueWith方法让   您指定要在何时启动的任务   先前的任务完成了。

实施例

var task = Task.Factory.StartNew(() => GetFileData())
                                       .ContinueWith((x) => Analyze(x.Result))
                                       .ContinueWith((y) => Summarize(y.Result));

答案 2 :(得分:0)

对于计划任务,您正在寻找支持cron作业的库。这是我在项目中使用的一个。

http://blog.bobcravens.com/2009/10/an-event-based-cron-scheduled-job-in-c/

存在许多库。我发现很多功能丰富且有点沉重。

希望这有帮助。

鲍勃