非UI线程的Timer

非UI线程的Timer

 日常我们使用的Timer 基本都是System.Timers.Timer,但是前段时间使用的时候就发现 在它的Tick处理

中有个长时间未响应的处理 结果发现界面会未响应,才了解原来 System.Timers.Timer 是使用的UI线程。

于是我赶紧百度了一下,还有个System.Threading.Timer 这个命名空间下的定时器不是阻塞UI的,于是查看了
一下用法

Timer(TimerCallback callback, object state, int dueTime, int period)

1.第一个参数是个委托,就是对应的定期执行的函数的委托

2.第二个参数定时执行函数时的参数,不用的时候可以给null

3.第三个参数是调用TeimerCallback之前的延迟时间,0 为立即开始 -1 为停止

4.第四个参数是定时器的间隔时间

原文地址:https://www.cnblogs.com/wuyaxiansheng/p/13099266.html