最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

c# 實現(xiàn)計時器功能

 更新時間:2020年12月23日 15:44:20   作者:霸道的程序猿  
這篇文章主要介紹了c# 實現(xiàn)計時器功能的示例代碼,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下

場景

在低液位預警彈窗點擊確定后需要實現(xiàn)一個計時器,比如在五分鐘后再執(zhí)行監(jiān)控。

實現(xiàn)思路是使用Timer然后每秒執(zhí)行一個方法,在方法中對秒數(shù)進行減1操作,等倒計時結束后執(zhí)行相應的操作。

實現(xiàn)

但是Timer有三個

1.定義在System.Windows.Forms里  
2.定義在System.Threading.Timer類里  
3.定義在System.Timers.Timer類里

一開始使用的是System.Windows.Forms里面的

System.Windows.Forms.Timer是應用于WinForm中的,它是通過Windows消息機制實現(xiàn)的,類似于VB或Delphi中的Timer控件,內部使用API  SetTimer實現(xiàn)的。它的主要缺點是計時不精確,而且必須有消息循環(huán),Console  Application(控制臺應用程序)無法使用。

使用代碼示例:

新建定時器類對象

System.Windows.Forms.Timer _timer = new System.Windows.Forms.Timer();

設置執(zhí)行的間隔時間,單位毫秒

_timer.Interval = 1000;

設置間隔時間內執(zhí)行的方法

_timer.Tick +=_timer_Tick;
private void _timer_Tick(object sender, EventArgs e)
  {
    //執(zhí)行的業(yè)務
  }

啟動計時器

_timer.Start();

停止計時器

_timer.Stop();

但是發(fā)現(xiàn)此定時器并不執(zhí)行,其每秒執(zhí)行一次的方法不執(zhí)行,原來其在控制臺程序中沒法使用

所以改為了System.Timers.Timer

新建定時器對象并設置執(zhí)行的間隔時間為1秒

System.Timers.Timer _timerWaterTank = new System.Timers.Timer(1000);//實例化Timer類,設置間隔時間為1000毫秒; 

設置定時器的執(zhí)行事件

_timerWaterTank.Elapsed += new System.Timers.ElapsedEventHandler(_timerWaterTank_Tick);//到達時間的時候執(zhí)行事件;

設置是執(zhí)行一次還是一直執(zhí)行

_timerWaterTank.AutoReset = true;//設置是執(zhí)行一次(false)還是一直執(zhí)行(true);

具體執(zhí)行的事件方法

private void _timerWaterTank_Tick(object sender, EventArgs e)
      {
        System.Timers.Timer timer = sender as System.Timers.Timer;
        //要計時的時間秒數(shù)
        this.LowLevelSecondsWaterTank--;
        if (this.LowLevelSecondsWaterTank <= 0)
        {
          //倒計時結束后執(zhí)行的業(yè)務
          Global.PublicVar.Instance.IsGoOnMonitorWaterPool = true;
          timer.Enabled = false;
          this.LowLevelSecondsWaterTank = Global.LOW_LEVEL_MONITOR_SECONDS;
          
        }
      }

這樣讓定時器一秒執(zhí)行一次方法,在此方法中將秒數(shù)減1,這樣在秒數(shù)到0的時候執(zhí)行具體的業(yè)務。

啟動定時器

timer.Enabled = true;

停止計時器

timer.Enabled = false;

以上就是c# 實現(xiàn)計時器功能的詳細內容,更多關于c# 計時器的資料請關注腳本之家其它相關文章!

相關文章

  • c#異步發(fā)送郵件的類

    c#異步發(fā)送郵件的類

    這篇文章主要介紹了使用c#異步發(fā)送郵件的類,大家參考使用吧
    2014-01-01
  • C#中dotnetcharting的用法實例詳解

    C#中dotnetcharting的用法實例詳解

    這篇文章主要介紹了C#中dotnetcharting的用法,以實例形式詳細分析了基于dotnetcharting的圖表繪制的各種常用方法,是非常實用的技巧,需要的朋友可以參考下
    2014-10-10
  • 詳解c# 線程同步

    詳解c# 線程同步

    這篇文章主要介紹了c# 線程同步的相關資料,文中講解非常細致,示例代碼幫助大家更好的理解和學習c# 多線程,感興趣的朋友可以了解下
    2020-07-07
  • C#?HttpClient超時重試機制詳解

    C#?HttpClient超時重試機制詳解

    超時重試的實現(xiàn)方式可以使用循環(huán)結構,在請求發(fā)起后等待一定時間,若超時未收到響應,則再次發(fā)起請求,循環(huán)次數(shù)可以根據(jù)實際情況進行設置,一般建議不超過三次,這篇文章主要介紹了C#?HttpClient超時重試,需要的朋友可以參考下
    2023-06-06
  • C#實現(xiàn)Dictionary字典賦值的方法

    C#實現(xiàn)Dictionary字典賦值的方法

    本文主要介紹了C#實現(xiàn)Dictionary字典賦值的方法,如同java中的Hasttable,C#里面有Dictionary,可以實現(xiàn)很高效的鍵值對操作。感興趣的可以了解一下
    2021-05-05
  • C#實現(xiàn)微信紅包功能

    C#實現(xiàn)微信紅包功能

    這篇文章主要介紹了C#實現(xiàn)微信紅包功能,使用正態(tài)分布計算紅包金額,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • WPF實現(xiàn)動畫效果(一)之基本概念

    WPF實現(xiàn)動畫效果(一)之基本概念

    這篇文章介紹了WPF實現(xiàn)動畫效果之基本概念,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-06-06
  • C# IsDefined的問題

    C# IsDefined的問題

    這篇文章主要介紹了C# IsDefined的問題,通俗易懂,需要的朋友可以參考下。
    2016-06-06
  • C#線程池操作方法

    C#線程池操作方法

    這篇文章主要介紹了C#線程池操作方法,實例分析了C#中線程池的相關使用技巧,需要的朋友可以參考下
    2015-04-04
  • 在C#中 webbrowser的使用心得

    在C#中 webbrowser的使用心得

    最近用webbrowser做了個東西,期間有點小曲折,而且網(wǎng)上的解決方法也基本都是淺嘗輒止,特此在這里發(fā)一下同大家分享。

    2013-04-04

最新評論

阿拉尔市| 陇南市| 台中县| 泗水县| 湄潭县| 常德市| 通山县| 龙南县| 河北区| 阆中市| 磴口县| 苍梧县| 镇宁| 舟山市| 河津市| 霍山县| 江口县| 湟源县| 锡林浩特市| 朝阳市| 崇阳县| 襄樊市| 京山县| 岱山县| 忻州市| 酒泉市| 青铜峡市| 吴忠市| 晴隆县| 保靖县| 兴国县| 裕民县| 丹巴县| 来凤县| 呼伦贝尔市| 安图县| 万全县| 遂宁市| 曲阳县| 广丰县| 柯坪县|