什么代码可以更好地在工作线程执行其工作时延迟(等待)主线程?
1)
int ticks = System.Environment.TickCount;
while (System.Environment.TickCount - ticks < milliseconds);
2)
Thread.Sleep(milliseconds);
3)
Your variant.
谢谢。
已添加
解决方案:
最佳答案
这些都不好。当工作线程执行其工作时,任何一个都会导致 UI 变得无响应。
相反,您应该安排工作项在工作线程上运行,然后在工作完成时将消息发送回 UI 线程。
从工作线程在 UI 线程上运行事物的一种方法是:
Deployment.Current.Dispatcher.BeginInvoke(() =>
{
// Your UI thread code to run here.
}
See also .
您还可以使用 background workers .
关于c# - 当工作线程正在工作时,什么代码可以更好地延迟主线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7368041/