gpt4 book ai didi

windows - 需要帮助编写一个循环任务调度程序

转载 作者:可可西里 更新时间:2023-11-01 09:18:02 27 4
gpt4 key购买 nike

我需要编写一个工具来按照用户可配置的时间表运行重复性任务。我将使用 C# 3.5 编写它,它将在 XP、Windows 7 或 Windows Server 2008 上运行。这些任务大约需要 20 分钟才能完成。用户可能希望设置多种配置:例如,每日、每周和每月周期。使用任务计划程序不是一种选择。

用户将通过类似于 Outlook 的定期约会对话框的界面安排重复。一旦他们设置了时间表,他们就会启动它,它应该位于系统托盘中并在指定的时间开始它的任务,然后发送邮件表明它已经完成。

最好的编写方式是什么,这样它才不会耗尽资源、锁定主机或出现其他不当行为?

最佳答案

您能做的最好的事情就是利用操作系统提供的功能避免重新发明轮子。见文章Calling the Task Scheduler in Windows Vista (and Windows Server 2008) from managed code来自 Bart De Smet,了解 C# 中 Windows 任务调度程序的非常切中要点的用法。

如果出于某种原因您必须实现自己的服务(例如,更好地控制依赖项),我会查看一些使用 .NET 兼容语言的开源 Cron 实现。在名为 Implementing a small Cron service in C# 的代码项目上有一篇代码文章这似乎是这样做的。基于他的文章 An Event Based Cron (Scheduled) Job In C# ,看起来 Bob Cravens 在这个领域做了一些更彻底的工作,或者至少更彻底地记录了他的工作。如果你环顾四周,我敢肯定还有其他人,基于 Cron 的东西是一个很好的起点。

关于windows - 需要帮助编写一个循环任务调度程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4600852/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com