时间事件每预定义时间(15分钟)

本文关键字:时间 15分钟 预定义 事件 | 更新日期: 2023-09-27 17:56:52

我有一个问题,我似乎无法解决它。我想要的只是根据系统时钟在预定义的时间触发一个事件,例如每 15 分钟 30 分钟或 1 小时。

我最好在不使用 c# 计时器的情况下执行此操作。

更多的解释是,例如,用户选择的轮询时间为 15 分钟,而当前时间为 8:49。

该事件将在 9:04 触发,不会滞后。

这可以在没有系统计时器的情况下完成吗?

时间事件每预定义时间(15分钟)

有两种

方法可以解决此问题:

  • 使用计时器控件。最简单的方法
  • 使用静态方法Thread.Sleep(int milliseconds) .使用此方法存在一个小问题,因为该方法会阻止线程启动Thread.Sleep(int)。例如,如果您在主线程中启动它,该方法将阻止它。因此,要解决此问题,您可以创建一个新线程,然后在新线程中进行Thread.Sleep(int ms)

不知道这是否符合您的需求,但如果您必须安排很多工作/事件,那么 Quartz.NET 可能是正确的选择

http://www.quartz-scheduler.net/features.html