C#创建一个每30分钟运行一次代码的定时器循环?

Tob*_*oby 6 c# autosave timer .net-4.0 visual-studio

我想在我的C#程序中输入一个自动保存功能,它将在倒计时结束时运行一行代码,然后重新开始倒计时.它将运行我的SaveFile();功能.

我希望在用户首次保存/打开文档时启动此计时器,并在打开新文档时将其禁用.

Pie*_*ult 10

您可以在System.Timers 计时器上使用Elapsed事件.

Timer timer = new Timer(30 * 60 * 1000);
timer.Elapsed += OnTick; // Which can also be written as += new ElapsedEventHandler(OnTick);


private void OnTick(object source, ElapsedEventArgs e)
{ 
    //Save logic
}
Run Code Online (Sandbox Code Playgroud)

不要忘记在需要timer.Start()时打电话.


Hos*_*Rad 1

您可以使用System.Timers.Timer。它也有Stop方法Start,所以你可以做任何你想做的事。

System.Timers.Timer myTimer = new Timer(30 * 60 * 1000);
myTimer.Start();
myTimer.Elapsed += new ElapsedEventHandler(myTimer_Elapsed);


void myTimer_Elapsed(object sender, ElapsedEventArgs e)
{
    //your code
}
Run Code Online (Sandbox Code Playgroud)