簡體   English   中英

如何根據當前日期時間延遲計時器的運行或啟動

[英]How to delay a timer from running or start it based on current date time

我有控制台應用程序正在用作應用程序的演示,它會根據其警告用戶的時間跨度打印“ hello”。 當尚未到時時,我想延遲應用程序打印問候並在其時間恢復。

  public static async void timeCounter(int delae)
    {
        //This is suppose to cause a delay but it instead initiate the
        //TimerOperation_Tick method.
        await Task.Delay(delae);


        //  timer countdown




        System.Timers.Timer timer = new System.Timers.Timer();
        timer.Interval = 1000; // 1 second 
        timer.Elapsed += new ElapsedEventHandler(TimerOperation_Tick);
        timer.Start();
        if (obj.SubmissionCheck == true)
        {
            timer.Stop();

        }


    }

/// the event subscriber
 private static void TimerOperation_Tick(object e, ElapsedEventArgs args)
    {
        if (timeFrame != 0)
        {
            Console.WriteLine("hi" + timeFrame);
            timeFrame --;

          if (timeFrame < 1)
          {
            obj.SubmissionCheck = true;
            nt.Remove(obj);
              startNotification();

          }
        }

    }

嘗試設置timer.Enabled = false; 這將防止計時器滴答聲的發生。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM