給c#添加SetTimeout和SetInterval函數(shù)
更新時間:2008年03月14日 18:56:29 作者:
Javascript中的SetTimeout和SetInterval函數(shù)很方便,把他們移植到c#中來。
調(diào)用示例:
執(zhí)行效果:
2.
實現(xiàn)代碼:
復(fù)制代碼 代碼如下:
/// <summary>
2 /// 在指定時間過后執(zhí)行指定的表達式
3 /// </summary>
4 /// <param name="interval">事件之間經(jīng)過的時間(以毫秒為單位)</param>
5 /// <param name="action">要執(zhí)行的表達式</param>
6 public static void SetTimeout(double interval, Action action)
7 {
8 System.Timers.Timer timer = new System.Timers.Timer(interval);
9 timer.Elapsed += delegate(object sender, System.Timers.ElapsedEventArgs e)
10 {
11 timer.Enabled = false;
12 action();
13 };
14 timer.Enabled = true;
15 }
16 /// <summary>
17 /// 在指定時間周期重復(fù)執(zhí)行指定的表達式
18 /// </summary>
19 /// <param name="interval">事件之間經(jīng)過的時間(以毫秒為單位)</param>
20 /// <param name="action">要執(zhí)行的表達式</param>
21 public static void SetInterval(double interval, Action<ElapsedEventArgs> action)
22 {
23 System.Timers.Timer timer = new System.Timers.Timer(interval);
24 timer.Elapsed += delegate(object sender, System.Timers.ElapsedEventArgs e)
25 {
26 action(e);
27 };
28 timer.Enabled = true;
29 }
3.
由于System.Timers.Timer 是“基于服務(wù)器的 Timer 是為在多線程環(huán)境中用于輔助線程而設(shè)計的”,所以在winform中使用時如果要修改UI對象就要注意了,給個在winform中使用的例子:
運行效果:
您可能感興趣的文章:
- 深入理解setTimeout函數(shù)和setInterval函數(shù)
- setTimeout函數(shù)兼容各主流瀏覽器運行執(zhí)行效果實例
- 解決火狐瀏覽器下JS setTimeout函數(shù)不兼容失效不執(zhí)行的方法
- jQuery setTimeout()函數(shù)使用方法
- js函數(shù)setTimeout延遲執(zhí)行的簡單介紹
- JS中setInterval、setTimeout不能傳遞帶參數(shù)的函數(shù)的解決方案
- js函數(shù)使用技巧之 setTimeout(function(){},0)
- javascript setTimeout()傳遞函數(shù)參數(shù)(包括傳遞對象參數(shù))
- 定時器(setTimeout/setInterval)調(diào)用帶參函數(shù)失效解決方法
- setTimeout函數(shù)的神奇使用
相關(guān)文章
Visual Stodio2022中沒有mysql.dll的解決辦法
這篇文章介紹了Visual Stodio2022中沒有mysql.dll的解決辦法,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-12-12C#以太網(wǎng)Sockets服務(wù)器設(shè)計實現(xiàn)
本文主要介紹了C#以太網(wǎng)Sockets服務(wù)器設(shè)計實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02C#開發(fā)微信門戶及應(yīng)用(3) 文本消息和圖文消息應(yīng)答
這篇文章主要為大家詳細介紹了C#開發(fā)微信門戶及應(yīng)用第二篇,微信文本消息和圖文消息的應(yīng)答,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-06C#中調(diào)用SAPI實現(xiàn)語音識別的2種方法
這篇文章主要介紹了C#中調(diào)用SAPI實現(xiàn)語音識別的2種方法,本文直接給出實現(xiàn)代碼,需要的朋友可以參考下2015-06-06