调度程序按时完成一些任务

时间:2013-11-07 02:27:57

标签: c# windows-services

我正在制定一个调度程序来执行某些任务,例如向用户发送电子邮件等。它是一个基本的,每5分钟运行一次并完成其工作。我需要对其进行一些修改,以便它可以按需工作。例如,我需要在上午11:00向用户发送电子邮件,在上午11:02向另一个用户发送电子邮件。如何在不使用服务器上的大量资源的情况下使调度程序按时运行。我知道如果我需要每分钟发送一次电子邮件,那么它的睡眠时间应该是一分钟或更短。

有没有办法按需调用它,或者我需要一直激活一个线程来检查何时做什么,然后激活调度程序或负责发送电子邮件的其他进程。

请建议。您的意见很有价值。

感谢。

1 个答案:

答案 0 :(得分:1)

如果您需要每分钟发送一次电子邮件,最好创建一项服务,并让服务每分钟轮询数据库以寻找工作并在循环之间休眠1分钟。

如果您只需要每小时运行一次代码,最好使用Windows任务计划程序。