给c#添加SetTimeout和SetInterval函数

时间:2021-05-19

调用示例:

执行效果:

2.

实现代码:
复制代码 代码如下:
///<summary>
2///在指定时间过后执行指定的表达式
3///</summary>
4///<paramname="interval">事件之间经过的时间(以毫秒为单位)</param>
5///<paramname="action">要执行的表达式</param>
6publicstaticvoidSetTimeout(doubleinterval,Actionaction)
7{
8System.Timers.Timertimer=newSystem.Timers.Timer(interval);
9timer.Elapsed+=delegate(objectsender,System.Timers.ElapsedEventArgse)
10{
11timer.Enabled=false;
12action();
13};
14timer.Enabled=true;
15}
16///<summary>
17///在指定时间周期重复执行指定的表达式
18///</summary>
19///<paramname="interval">事件之间经过的时间(以毫秒为单位)</param>
20///<paramname="action">要执行的表达式</param>
21publicstaticvoidSetInterval(doubleinterval,Action<ElapsedEventArgs>action)
22{
23System.Timers.Timertimer=newSystem.Timers.Timer(interval);
24timer.Elapsed+=delegate(objectsender,System.Timers.ElapsedEventArgse)
25{
26action(e);
27};
28timer.Enabled=true;
29}


3.

由于System.Timers.Timer 是“基于服务器的 Timer 是为在多线程环境中用于辅助线程而设计的”,所以在winform中使用时如果要修改UI对象就要注意了,给个在winform中使用的例子:

运行效果:

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章