我希望有一个计时器每 10 秒更新一次全局变量,因此我在 Global.asax.cs 中放置了一个计时器:
void Application_Start(object sender, EventArgs e)
{
Timer aTimer = new Timer();
aTimer.Interval = 10*1000;
aTimer.Tick += aTimer_Tick;
aTimer.Start();
}
void aTimer_Tick(object sender, EventArgs e)
{
// Update Data
}
但奇怪的是 10 秒后什么也没有发生。我想知道是否可以这样做?
提前致谢。
最佳答案
使用System.Timers.Timer
而不是System.Windows.Forms.Timer
前者使用 Elasped
作为事件处理程序,并且几乎可以在应用程序中的任何位置按预期运行。后者是为 winforms 定制的,应该在 Form1_Load()
上使用,而不是在应用程序启动时使用。
关于c# - 服务器端的计时器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5623817/