调用示例:
执行效果:
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中使用的例子:
运行效果: