我试图让一个计时器每天触发两次,而不是一个稳定的时间跨度。
我想在 07:00 和 16:00 再次触发回调,然后在第二天的 07:00 重复。

出于某种原因,它让我望而却步,这似乎并不难,但我想我必须每天构建一个新的计时器并杀死它并在一天结束时?

最佳答案

为什么不让计时器每小时滴答一次,然后只响应 7:00 和 16:00 的事件?

var timer = new Timer(TimeSpan.FromHours(1).TotalMilliseconds);
timer.Elapsed += TimerHandler;

void TimerHandler(object sender, EventArgs e) {
  var hour = DateTime.Now.Hour;
  if (hour != 7 && hour != 16) {
    return;
  }
  ...
}

关于c# - 具有不同时间跨度的 .NETMF TimerCallback?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9179780/

10-11 22:26
查看更多