我想在指定的时间执行方法,例如在五分钟内执行一些方法。我不需要每隔一段时间(每天或每小时)执行一次。 我使用asp.net core 2.1制作Web应用程序。我希望能够添加例如3个工作要做 1)在5分钟内 2)在10分钟内 3)15分钟内 并期望在时间结束时执行。 如何以一种简单的方式做到这一点?
答案 0 :(得分:1)
为什么不使用计时器。简单容易...
private System.Timers.Timer myTimer;
private int minutes = Settings.Default.5MinuteTimer;
private void SetTimer()
{
myTimer= new System.Timers.Timer(1000 * 60 * minutes);
myTimer.Elapsed += OnTimedEvent;
myTimer.AutoReset = false; //Fire event only once.
myTimer.Enabled = true;
}
private void OnTimedEvent(Object source, ElapsedEventArgs e)
{
MyMethod();
}
private MyMethod()
{
myTimer.Stop(); //Calling stop will also Dispose the timer.
// Other code.
}