在这种情况下我应该使用后台工作人员还是计时器?

Pac*_*ane 2 c# multithreading timer backgroundworker

我正在编写一个管理一堆定时器的程序.

用户必须手动启动它们,并且能够从每个计时器获取信息,例如知道剩余时间.

我不希望GUI冻结,因此我不希望在主窗体线程上有一个冻结整个事物的计时器.

那么,Timer类是否在新线程上发送计时器,还是将它保存在主UI线程上?

否则,我应该使用后台工作程序来完成此任务吗?

Mit*_*eat 7

System.Windows.Forms.Timer事件在UI线程上运行.

相反,您可以使用System.Threading.Timer在工作线程上运行的.

参考.:比较.NET Framework类库中的Timer类