【发布时间】:2021-12-30 00:54:15
【问题描述】:
我已经用 F#(一些用 C#)/.Net 5.0 编写了一些代码,目前我只是将它作为控制台应用程序运行并在 Visual Studio 中对其进行调试。
我想要它
- 自行运行 - 周一至周五早上 7 点到下午 6 点之间每小时运行一次
- 如果需要,可以暂停执行。
我应该采取什么方法?当我编写 nodejs 应用程序时,我曾经将命令行命令放入 windows 调度程序。
我应该
- 使用 windows 调度程序并作为命令行执行
- 编写一个 Windows 服务来完成它
- 还有别的吗?
我不确定要采取什么方法,我可能会错过一种完全适合这项任务的方法。
【问题讨论】:
-
有很多框架允许您定义作业并按计划运行它们。仅举几例:Quartz.net、Hangfire、FluentScheduler 等。
-
您将通过什么机制启动进程暂停?
-
我真的没想过(暂停)。如果它是 Windows 服务,我会暂停服务 - 否则我想我必须设置一个数据库标志,在使用上述库之一运行时检查该标志。
-
您可以使用内置后台服务而不是框架:docs.microsoft.com/en-us/dotnet/core/extensions/workers
标签: c# f# scheduled-tasks .net-5