我在Visual Studio 2010(c ++)中创建了一个WinForm,与此示例几乎相同: http://msdn.microsoft.com/en-us/library/waw3xexc.aspx
但是当我点击“午餐”背景工作的按钮时,它“卡住”了WinForm, 所以我无法移动它或者在功能运行时点击“停止按钮”。
该函数根据需要运行 - 返回预期结果,并且进度条也可以。 看起来BackgroundWorker在与WinForm相同的线程中运行。
可能是什么问题?
谢谢!
答案 0 :(得分:0)
我发现了问题。
BackgroundWorker实际上在另一个线程上运行,但是它经常发送更新进度的事件,并且主要表单中的那些事件“午餐”功能 - 更新ProgressBar - 并且这个功能“卡住”了表单