C#四种定时器的用法

 时间:2026-02-14 21:01:56

1、日常项目开发中,很多时候都需要用到定时器来处理一些问题,那么c#中各种定时器应该怎么用呢?下面来简单介绍下C#中4种定时器的使用方法说明:

C#四种定时器的用法

2、第一种定时器,System.Windows.Forms.Timer


使用方法如下:

 System.Windows.Forms.Timer timer = new System.Windows.Forms.Timer();//创建定时器

timer.Tick += new EventHandler(timer1_Tick);//事件处理

timer.Enabled = true;//设置启用定时器
timer.Interval = 1000;//执行时间

timer.Start();//开启定时器

/// <summary> 

/// 定时器事件处理 
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param> 
private void timer1_Tick(object sender, EventArgs e)
{
      timer.Stop();//停止定时器
      timer.Tick -= new EventHandler(timer1_Tick);//取消事件
      timer.Enabled = false;//设置禁用定时器
}

C#四种定时器的用法

3、第二种定时器,System.Threading.Timer


使用方法如下:

System.Threading.Timer timer;

timer = new System.Threading.Timer(new TimerCallback(timerCall), this, 3000, 0);//创建定时器

/// <summary>

/// 事件处理
/// </summary>
/// <param name="obj"></param>
private void timerCall(object obj) 
{
      timer.Dispose();//释放定时器
} 

C#四种定时器的用法

4、第三种定时器,System.Timers.Timer


使用方法如下:

System.Timers.Timer timer = new System.Timers.Timer(1000);//创建定时器,设置间隔时间为1000毫秒;

timer.Elapsed += new System.Timers.ElapsedEventHandler(theout);  //到达时间的时候执行事件;

timer.AutoReset = true;//设置是执行一次(false)还是一直执行(true); 
timer.Enabled = true;//需要调用 timer.Start()或者timer.Enabled = true来启动它,
timer.Start();//timer.Start()的内部原理还是设置timer.Enabled = true;

/// <summary>

///执行事件
/// </summary>
/// <param name="source"></param>
/// <param name="e"></param>
public void theout(object source, System.Timers.ElapsedEventArgs e)

      timer.Elapsed -= new System.Timers.ElapsedEventHandler(theout);  //取消执行事件;  
      timer.Enabled = false;//禁用 
      timer.Stop();//停止
}

C#四种定时器的用法

5、第四种定时器,System.Windows.Threading.DispatcherTimer(WPF中的定时器)


使用方法如下:

private static System.Windows.Threading.DispatcherTimer timer = new System.Windows.Threading.DispatcherTimer();//创建定时器

timer.Tick += new EventHandler(theout);//执行事件

timer.Interval = new TimeSpan(0, 0, 0, 1);//1s执行
timer.IsEnabled = true;//启用
timer.Start();//开启

/// <summary>

///执行事件
/// </summary>
/// <param name="source"></param>
/// <param name="e"></param>
public static void theout(object sender, EventArgs e)
{
     timer.Tick -= new EventHandler(theout);//取消执行事件;   
     timer.IsEnabled = false;//禁用
     timer.Stop();//停止
}

C#四种定时器的用法

  • CAD制图中怎么添加Word文档、表格
  • vue操作dom的几种方法
  • 阿里云盘下载完成的文件应该怎么查找
  • 汽车的kw是什么意思
  • 刺激战场m24怎么配置于使用技巧
  • 热门搜索
    哺乳期能减肥吗 云和山的彼端攻略 康宝莱减肥有效吗 红烧大虾 樱花热水器怎么样 激光祛斑怎么样 宝宝不拉大便怎么办 孩子老是眨眼睛怎么回事 鸡胸怎么办 小腿肚子粗怎么减