計時器Timer介紹

2022-02-11 07:18:15 字數 2255 閱讀 9199

計時器用於到指定時間呼叫委託(或說執行方法),或定時呼叫委託。

(一)timer

類名字空間:

system.threading

它主要提供在指定時間間隔內迴圈執行方法。

它的構造方法有多個,以其中乙個為例:

public

timer(timercallback callback,object state,int duetime,int period)

四個引數分別表示:

要執行的方法;包括**方法中要使用的資訊的物件;在呼叫執行的方法之前的延遲時間(毫秒);呼叫**方法的時間間隔(毫秒)

timercallback

的定義為:

public

delegate

void

timercallback(object state)

示例:static

void

main(

string

args)  

static

void

printmessage(

object

objstate) 

設定2000毫秒後開始呼叫執行方法,每5000毫秒執行一次,並把k傳遞到執行方法(callback委託)

說明:2000毫秒後首次執行一次**方法,然後每5000毫秒後再執行。

**委託型別已經給出,在使用時可以action委託或lambda表示式或匿名委託來定義,如下:

action

<

object

>

ffun 

=delegate

(objecto);

timer timer2 

=new

timer(

newtimercallback(q 

=>

console.writeline(

"ok2"+

""+q.tostring())), k, 

2000

, 5000

);timer timer3 

=new

timer(

newtimercallback(ffun), k, 

2000

, 5000

);如果終止計時器,可以使用

public

void dispose()

方法例如:設定定時器,2秒鐘後開始,每2秒呼叫一次,然後在呼叫5次(首次除外)後釋放計時器。

static

intk =1

;static

timer timer1;

static

void

main(

string

args)

static

void

printmessage(

object

objstate)

(二)system.timers.timer

類在應用程式中生成定時事件。它有乙個屬性:

autoreset

public

bool autoreset

用於設定每次指定的間隔結束時引發elapsed 事件,還是僅在指定的間隔第一次結束後引發該事件。

重要成員說明:

interval

:設定時間間隔,單位毫秒

enabled

:是否引發elapsed事件

elapsed

:事件public

event elapsedeventhandler elapsed

其中事件型別:

public

delegate

void

elapsedeventhandler(object sender,elapsedeventargs e)

sender

為timer,eventargs的重要屬性為:

public

datetime signaltime

用於觸發計時事件的時間。

示例:static

void

main(

string

args)

static

void

ontimedevent(

object

source, system.timers.elapsedeventargs e)

列印內容略。

(三)system.windows.forms.timer

用在winform中,且必須用於視窗。略。

Android 計時器Timer用法

先看段 這個例項化了乙個handler,handler可以通過message在多個執行緒通訊,我這裡做的是定時reclen加1,然後以一定的格式,顯示到rectime上 ui執行緒上的操作 final handler handler new handler super.handlemessage m...

基於 Timer 的 flex 計時器

這幾天在用flex 做網路棋牌遊戲,很多地方都要用到計時器。雖然flex 內建有個timer,但並不適合做遊戲時鐘,用起來怪怪的。自己實現了個易用介面,可用作時鐘,倒計時等。以乙個10秒到計時為例,只需建立該計時器類例項,並設定timer 事件響應函式如下 var timer mytimer new...

WML教程13 計時器(timer)

timer可以用來在使用者不進行任何操作的一段時間後,自動執行乙個任務,任何啟用card頁面的任務和使用者操作都會啟動timer,而任務進行時,timer就停止。每個card只能有乙個timer,乙個timer只能觸發乙個任務。語法如下 value為必選屬性,用來設定定時器的定時值,最小單位為0.1...