现在的位置: 首页 > 综合 > 正文

C#.net 定时器

2013年09月22日 ⁄ 综合 ⁄ 共 1154字 ⁄ 字号 评论关闭

最近需要用到一个定时器,设定当 程序 到某时刻 执行某段代码。

using System;
using System.Timers;

namespace 定时器ConsoleApplication1
{
 class Class1
 { 
  [STAThread] 
  static void Main(string[] args)
  {
   System.Timers.Timer aTimer = new System.Timers.Timer();
   aTimer.Elapsed += new ElapsedEventHandler(TimeEvent);
   // 设置引发时间的时间间隔 此处设置为1秒(1000毫秒)
   aTimer.Interval = 1000;
   aTimer.Enabled = true;

   Console.WriteLine("按回车键结束程序");
   Console.WriteLine(" 等待程序的执行......");
   Console.ReadLine();
  }

  // 当时间发生的时候需要进行的逻辑处理等
  //    在这里仅仅是一种方式,可以实现这样的方式很多.
  private static void TimeEvent(object source, ElapsedEventArgs e)
  {  
   // 得到 hour minute second  如果等于某个值就开始执行某个程序。
   int intHour   = e.SignalTime.Hour;
   int intMinute = e.SignalTime.Minute;
   int intSecond = e.SignalTime.Second;

   // 定制时间; 比如 在10:30 :00 的时候执行某个函数
   int iHour   = 10;
   int iMinute = 30;
   int iSecond = 00;

   // 设置  每秒钟的开始执行一次
   if( intSecond == iSecond )
   {
    Console.WriteLine("每秒钟的开始执行一次!");
   }

   // 设置 每个小时的30分钟开始执行
   if( intMinute == iMinute && intSecond == iSecond )
   {
    Console.WriteLine("每个小时的30分钟开始执行一次!");
   }
   
   // 设置 每天的10:30:00开始执行程序
   if( intHour == iHour && intMinute == iMinute  && intSecond == iSecond )
   {
    Console.WriteLine("在每天10点30分开始执行!");
   }
  }
 }
}

抱歉!评论已关闭.