System.Timers.Timer调整间隔后,首次触发时间为何是预设的三倍时长?

2026-03-30 14:290阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1217个文字,预计阅读时间需要5分钟。

System.Timers.Timer调整间隔后,首次触发时间为何是预设的三倍时长?

【问题】为什么System.Timers.Timer更新间隔后第一次触发时间是设定时间的三倍?

【独立观察员 2022年9月4日】在编写WiFi固定器[1]程序时,按如下方式:

​为什么 System.Timers.Timer 更改间隔时间后的第一次触发时间是设定时间的三倍?​​

​​独立观察员 2022 年 9 月 4 日​​

在编写 “​​Wifi 固定器[1]​​” 程序时,按如下方式使用了​​定时器​​:

//声明;
private Timer _Timer = new Timer() { Interval = 1, AutoReset = true };

//设置处理方法;
_Timer.Elapsed += new ElapsedEventHandler(TimerHandler);

/// <summary>
/// 定时器任务
/// </summary>
private async void TimerHandler(object source, ElapsedEventArgs e)
{
if (_Timer.Interval == 1) //如果是第一次执行
{
_Timer.Interval = 1000 * Configs.CheckInterval; //设置Interval为想要的间隔时间。

阅读全文

本文共计1217个文字,预计阅读时间需要5分钟。

System.Timers.Timer调整间隔后,首次触发时间为何是预设的三倍时长?

【问题】为什么System.Timers.Timer更新间隔后第一次触发时间是设定时间的三倍?

【独立观察员 2022年9月4日】在编写WiFi固定器[1]程序时,按如下方式:

​为什么 System.Timers.Timer 更改间隔时间后的第一次触发时间是设定时间的三倍?​​

​​独立观察员 2022 年 9 月 4 日​​

在编写 “​​Wifi 固定器[1]​​” 程序时,按如下方式使用了​​定时器​​:

//声明;
private Timer _Timer = new Timer() { Interval = 1, AutoReset = true };

//设置处理方法;
_Timer.Elapsed += new ElapsedEventHandler(TimerHandler);

/// <summary>
/// 定时器任务
/// </summary>
private async void TimerHandler(object source, ElapsedEventArgs e)
{
if (_Timer.Interval == 1) //如果是第一次执行
{
_Timer.Interval = 1000 * Configs.CheckInterval; //设置Interval为想要的间隔时间。

阅读全文