當前位置

首頁 > 商務英語 > 計算機英語 > c中timer控件的用法

c中timer控件的用法

推薦人: 來源: 閱讀: 1.34W 次

c中timer控件的用法的用法你知道嗎?下面小編就跟你們詳細介紹下c中timer控件的用法的用法,希望對你們有用。

ing-bottom: 56.25%;">c中timer控件的用法

  c中timer控件的用法的用法如下:

關於C#中timer類 在C#裏關於定時器類就有3個

1.定義在s裏

2.定義在r類裏

3.定義在r類裏

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

r和r非常類似,它們是通過 Thread Pool實現的,輕量,計時精確,對應用程序、消息沒有特別的要求。r還可以應用於WinForm,完全取代上面的Timer控件。它們的缺點是不支持直接的拖放,需要手工編碼。

例:

使用r類

//實例化Timer類,設置間隔時間爲10000毫秒;

r t = new r(10000);

//到達時間的時候執行事件;

sed += new sedEventHandler(theout);

Reset = true;//設置是執行一次(false)還是一直執行(true);

led = true;//是否執行sed事件;

====================================

自己寫的一個用r類的方法

複製代碼 代碼如下:

public class BF_CheckUpdate

{

private static object LockObject = new Object();

// 定義數據檢查Timer

private static Timer CheckUpdatetimer = new Timer();

// 檢查更新鎖

private static int CheckUpDateLock = 0;

///

/// 設定數據檢查Timer參數

///

internal static void GetTimerStart()

{

// 循環間隔時間(10分鐘)

rval = 600000;

// 允許Timer執行

led = true;

// 定義回調

sed += new ElapsedEventHandler(CheckUpdatetimer_Elapsed);

// 定義多次循環

Reset = true;

}

///

/// timer事件

///

///

///

private static void CheckUpdatetimer_Elapsed(object sender, ElapsedEventArgs e)

{

// 加鎖檢查更新鎖

lock (LockObject)

{

if (CheckUpDateLock == 0) CheckUpDateLock = 1;

else return;

}

//More code goes here.

//具體實現功能的方法

Check();

// 解鎖更新檢查鎖

lock (LockObject)

{

CheckUpDateLock = 0;

}

}

}