C# System.Threading.Timer 定时器


前提:

  需要引入  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);
        }
    }
}

  

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM