前提:
需要引入 System.Threading;
描述:
在很多時間我們都需要進行延遲執行,或是定時執行一些指定業務,這個時候使用 Timer 是最合適的,而且 Timer 是Cpu 級別處理對系統影響很少,就算創建上千上萬個 Timer 也不會影響。
故見意多使用 Timer 是一個很好的定時任務器。
代碼:
using System; using System.Threading; namespace MyTimer { class Program { //構建 Timer static Timer timer = new Timer(TimerCallBack, null, Timeout.InfiniteTimeSpan, Timeout.InfiniteTimeSpan); static void Main(string[] args) { //立即執行一次 timer.Change(TimeSpan.Zero, Timeout.InfiniteTimeSpan); Console.ReadKey(); } static void TimerCallBack(object state) { var nextTime = DateTime.Now.AddSeconds(10); Console.WriteLine("{0} 執行一次,下次執行時間 {1}", DateTime.Now, nextTime); //執行完后,重新設置定時器下次執行時間. timer.Change(nextTime.Subtract(DateTime.Now), Timeout.InfiniteTimeSpan); } } }