System.Timers.Timer規定間隔執行方法,規定每天的幾點幾分鐘執行方法
阿新 • • 發佈:2021-10-21
首先定義一個timer
public Task StartAsync(CancellationToken cancellationToken) { // Console.WriteLine(" Upload is starting"); //_timer = new Timer(Dowork, null, TimeSpan.Zero, TimeSpan.FromDays(1));//頻率一天一次 System.Timers.Timer timer = new System.Timers.Timer(); timer.Enabled = true; timer.Interval = 60000; //執行間隔時間,單位為毫秒; 此時時間間隔為1分鐘 這個配置的時間不能配置的大於配置上傳時間的分鐘 要不然導致跳過時間 未上傳 // timer.Start(); //達到間隔時發生 timer.Elapsed += new System.Timers.ElapsedEventHandler(Dowork); return Task.CompletedTask; }
time執行的方法
private async void Dowork(object state, ElapsedEventArgs e) { try { Console.WriteLine("我每分鐘執行一次"); if (DateTime.Now.Hour ==10 && DateTime.Now.Minute == 30) //按每天10.30執行該方法 { //你要執行的方法寫在裡面 Console.WriteLine("我只有在10.30的時候才會進來"); } } catch (Exception) { throw; } }