我想每1分钟,15分钟等运行一次代码。有没有比按照时间间隔1秒放入定时器控制更好的方法。 c#解决方案也可以。
If Now.Minute Mod 15 = 0 Then
'run code for 15 min
End If
If Now.Minute Mod 1 = 0 Then
'run code for 1 min
End If
答案 0 :(得分:6)
您可以使用计时器查看this帖子。
int startin = 60 - DateTime.Now.Second;
var t = new System.Threading.Timer(o => Console.WriteLine("Hello"),
null, startin * 1000, 60000);
答案 1 :(得分:2)
如果您正在进行一些繁重的处理,那么最好编写一个应用程序并使用Windows任务调度程序安排它。
答案 2 :(得分:1)
此表单有一个流程,在分钟0和每15分钟,分钟1的代码可能不会运行,因为1分钟的检查将等到15分钟的代码完成,这可能需要一些时间。
使用两个timers(如果两个代码不相关),每1分钟就会关闭一次,而另一个则每15分钟一次
或者如果可能,您可以使用Windows调度程序服务。
答案 3 :(得分:1)
您可以创建一个单独的线程来连续运行代码,并发出信号以停止使用15分钟或1分钟的计时器。然而,更好地解释你想要达到的目标将有助于每个人回答你的问题。如果你要做的就是执行一些代码(而不是重复执行它),简单的计时器就会有意义......但你的例子还不清楚。
答案 4 :(得分:-2)
创建 windows-service 来执行此操作。