我是新來處理線程。StopWatch(System.Diagnostics)和System.Timers
System.Diagnostics和System.Timers在線程上下文中的作用是什麼? 兩者是彼此替代或他們實施一些獨特的任務?
我是新來處理線程。StopWatch(System.Diagnostics)和System.Timers
System.Diagnostics和System.Timers在線程上下文中的作用是什麼? 兩者是彼此替代或他們實施一些獨特的任務?
StopWatch用於測量時間間隔。計時器用於調度方法在將來的某個時刻執行。他們完全不同。
命名空間System.Diagnostics提供的類允許您與系統進程,事件日誌和性能計數器進行交互。
System.Timers命名空間提供了Timer組件,它允許您在指定的時間間隔內引發事件。
非常感謝米奇。 – user186973 2009-10-09 09:31:04
請謹慎使用System.Timers。
基本上有三個計時器在.net
System.Timers.Timer
System.Threading.Timer
System.Windows.Forms.Timer
Three Timers available in .Net
需要注意的是集問題的關鍵的東西。
如果你的線程在某個點之後沒有引用某個對象,它可以被垃圾收集。這實際上是IDisposable模式的主要原因之一,因爲調用dispose意味着您將對象保持活動狀態,直到至少在dispose()調用結束時爲止。這是調用的方法,當你說
using(var myobj = new System.Threading.Timers())
{
//run program here
} //Timer can be collected from now.
作爲另一種選擇我一直在用我的應用程序BackgroundWorker class有良好的效果的澄清
感謝。 :) – user186973 2009-10-09 09:30:30