哪个线程将运行计时器方法?

时间:2014-05-02 13:17:01

标签: c# multithreading timer

我希望定期运行一个方法,但希望通过在单独的线程中运行来优化我的代码。到目前为止,我的代码如下所示:

private System.Timers.Timer timerQuartSec = new System.Timers.Timer(250);
private Thread quarterSecThread;

timerQuartSec.Elapsed += new System.Timers.ElapsedEventHandler(someMethod);

quarterSecThread = new Thread(new ThreadStart(timerQuartSec.Start));

我的问题是,这段代码只是启动计时器还是代码(在TimerElapsed上)会在新线程上运行?

1 个答案:

答案 0 :(得分:2)

只要您没有设置计时器System.Timers.Timer

ThreadPool就会在SynchronizingObject主题上运行。

因此无需启动专用线程。如果要访问GUI元素,则需要注意。