C# Framework Class Library 中的各种 Timer

来自《CLR via C# (第4版)》

> System.Threading.Timer

用于在一个线程池线程上执行定时的(周期性发生的)后台任务。

> System.Windows.Forms.Timer

构造这个类的实例,相当于告诉 Windows 将一个计时器和调用线程关联(参见 Win32 SetTimer 函数)。当这个计时器触发时,Windows 将一条计时器消息(WM_TIMER)注入线程的消息队列。线程必须执行一个消息泵来提取这些消息,并把它们派发给需要的回调方法。所有这些工作都只由一个线程完成——设置计时器的线程保证就是执行回调方法的线程。计时器方法不会由多个线程并发执行。

 

> System.Windows.Threading.DispatcherTimer

System.Windows.Forms.Timer 在 Silverlight 和 WPF 应用程序中的等价物。

 

> Windows.UI.Xaml.DispatcherTimer

System.Windows.Forms.Timer 在 Windows Store 应用中的等价物。

> System.Timers.Timer

本质上是 System.Threading.Timer 的包装类。Microsoft 还没有理清线程处理和计时器的时候添加到 FCL 中的。这个类应该完全删除。

猜你喜欢

转载自pre.iteye.com/blog/2224913