我有一个运行许多线程的应用程序。每个线程都应该有一个计时器来检查该线程范围内的某些内容。我的问题是:我应该使用哪个计时器,它们之间有什么区别?
答案 0 :(得分:74)
本文提供了一个很好的比较,应该包含您需要的信息:Comparing the Timer Classes in the .NET Framework Class Library:
Windows.Forms System.Timers System.Threading Timer event runs on what thread? UI thread UI or worker thread Worker thread Instances are thread safe? No Yes No Familiar/intuitive object model? Yes Yes No Requires Windows Forms? Yes No No Metronome-quality beat? No Yes* Yes* Timer event supports state object? No No Yes Initial timer event schedulable? No No Yes Class supports inheritance? Yes Yes No*取决于系统资源的可用性(例如,工作线程)