如何创建在特定条件下启动并计数到15秒的计时器?(C#)

如何创建在特定条件下启动并计数到15秒的计时器?(C#),c#,if-statement,dll,timer,C#,If Statement,Dll,Timer,我正在创建一个C#库,并希望创建一个计时器,在满足特定条件后启动。然后,我希望计时器最多计数15秒,一旦达到15秒,就会执行另一个操作。它看起来像这样: if (condition is met) { //start timer } if (timer == 15 seconds) { //do something //reset timer for next time that condition is met } 非常感谢您在C#中提供的任何帮助 //using

我正在创建一个C#库,并希望创建一个计时器,在满足特定条件后启动。然后,我希望计时器最多计数15秒,一旦达到15秒,就会执行另一个操作。它看起来像这样:

if (condition is met)
{
    //start timer
}

if (timer == 15 seconds)
{
    //do something
    //reset timer for next time that condition is met
}
非常感谢您在C#中提供的任何帮助

//using System.Timers;
如何暗示:

Timer timer = new Timer(); //Outside the method
在计时器订阅的方法中

timer.Elapsed += new ElapsedEventHandler(OnElapsedTime);
timer.Interval = 15000; //number in milisecinds  
timer.Enabled = true;
OneLassedTime事件处理程序

private async void OnElapsedTime(object source, ElapsedEventArgs e)
{
    //Do Something
}
注意事项:

  • 重要的是
    使用系统计时器
  • 该活动将每15000(15秒)运行一次
  • 事件处理程序中的代码将自动执行(不需要条件)
  • 如何暗示:

    Timer timer = new Timer(); //Outside the method
    
    在计时器订阅的方法中

    timer.Elapsed += new ElapsedEventHandler(OnElapsedTime);
    timer.Interval = 15000; //number in milisecinds  
    timer.Enabled = true;
    
    OneLassedTime事件处理程序

    private async void OnElapsedTime(object source, ElapsedEventArgs e)
    {
        //Do Something
    }
    
    注意事项:

  • 重要的是
    使用系统计时器
  • 该活动将每15000(15秒)运行一次
  • 事件处理程序中的代码将自动执行(不需要条件)

  • 您可以使用
    Task.Delay

    if (condition is met)
    {
       // Wait for 15 seconds
       await Task.Delay(15000);
       
       //do something
    }
    

    您可以使用
    Task.Delay

    if (condition is met)
    {
       // Wait for 15 seconds
       await Task.Delay(15000);
       
       //do something
    }
    

    谢谢这对我很有帮助!!:)@代码5777对此很高兴,如果您愿意将答案标记为已接受,我将很高兴,谢谢!这对我很有帮助!!:)@代码5777对此很高兴,如果您愿意将答案标记为已接受,我将很高兴,谢谢