可能重复:
C# WinForm Application - UI Hangs during Long-Running Operation
我使用C#和.NET Framework 4.0创建了一个Windows窗体应用程序。我遇到了一个问题,当程序正在工作时,我无法在窗口移动,如果我最小化它,我无法让它回来。我假设这是因为我正在运行UI的同一个线程上工作。
这可能是原因吗?如果是这样,我该如何解决?
答案 0 :(得分:3)
如果您不想进入线程和线程的内部,我建议使用BackgroundWorker控件来完成您的任务。后台工作程序控件在幕后封装了很多线程,为您提供了一个干净的编程接口。
以下链接可能对您有帮助(由我撰写)
答案 1 :(得分:0)
尝试编写代码:
System.Threading.Tasks.Task.Factory.StartNew(new Action(() =>
{
//your code goes here
}));
因为没有任务,你的代码和UI在同一个线程上运行会导致减速