Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在这种情况下,我应该使用后台工作人员还是计时器?_C#_Multithreading_Timer_Backgroundworker - Fatal编程技术网

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

C# 在这种情况下,我应该使用后台工作人员还是计时器?,c#,multithreading,timer,backgroundworker,C#,Multithreading,Timer,Backgroundworker,我正在写一个程序来管理一堆计时器 用户必须手动启动它们,并且能够从每个计时器获取信息,例如,了解剩余时间 我不希望GUI冻结,因此我不希望在主窗体线程上有一个计时器冻结整个事件 那么,Timer类是将计时器发送到新线程上,还是将其保留在主UI线程上 否则,我应该使用后台工作程序来完成此任务吗?事件在UI线程上运行 相反,您可以使用在辅助线程上运行的 参考资料:取决于您使用的计时器类型,我建议您阅读以确定最适合您的计时器

我正在写一个程序来管理一堆计时器

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

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

那么,Timer类是将计时器发送到新线程上,还是将其保留在主UI线程上

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

事件在UI线程上运行

相反,您可以使用在辅助线程上运行的


参考资料:

取决于您使用的计时器类型,我建议您阅读以确定最适合您的计时器