【发布时间】:2011-03-15 16:11:23
【问题描述】:
我在 SO 上进行了搜索,并找到了有关 Quartz.net 的答案。但这对我的项目来说似乎太大了。我想要一个等效的解决方案,但更简单并且(充其量)在代码中(不需要外部库)。如何每天在特定时间调用方法?
我需要添加一些关于此的信息:
- 最简单(也是丑陋)的方法是每秒/分钟检查一次时间并在正确的时间调用该方法
我想要一种更有效的方法来做到这一点,无需不断检查时间,并且我可以控制工作是否完成。如果方法失败(由于任何问题),程序应该知道写入日志/发送电子邮件。这就是为什么我需要调用一个方法,而不是安排一个作业。
我在 Java 中找到了这个解决方案 Call a method at fixed time in Java。 C#中是否有类似的方式?
编辑:我已经做到了。我在 void Main() 中添加了一个参数,并创建了一个 bat(由 Windows 任务计划程序调度)来使用此参数运行程序。程序运行,完成工作,然后退出。如果作业失败,它能够写入日志和发送电子邮件。这种方法很符合我的要求:)
【问题讨论】:
-
那个链接的问题似乎表明您正在运行的应用程序中的一个方法必须定期调用。是这样吗?这将影响您是否需要进程内调度或是否可以只使用 Windows 调度程序。
-
我的程序将根据要求连续运行
-
嘿,我不敢相信你称我的回答“丑陋”。他们在战斗的话:-)
-
不是说你的答案:p。我也想过,我觉得我的丑。
标签: c# winforms methods scheduled-tasks