VS2010 中的后台工作者无法在另一个线程中运行
BackgroundWorker in VS2010 doesn't run in another thread
我在Visual Studio 2010 (c++)中创建了一个WinForm,几乎和这个例子一样:http://msdn.microsoft.com/en-us/library/waw3xexc.aspx
但是当我点击按钮,"午餐"BackgroundWorker它"卡住"的WinForm,所以我不能移动它,也不能在函数运行时点击"停止按钮"。
函数按预期运行——它返回预期的结果,并且进度条也正常。似乎BackgroundWorker运行在与WinForm相同的线程中。
可能是什么问题?
谢谢!
我找到问题了。
BackgroundWorker实际上运行在另一个线程上,但它发送的事件更新进度太频繁,这些事件的"午餐"功能在主表单-更新ProgressBar -和这个函数"卡住"的形式。
相关文章:
- 运行同一解决方案的另一个项目的项目
- C++线程:如何在一个线程仍在运行时阻止另一个线程执行 (Win32)
- 使用另一个程序调用正在运行的 C++ 程序中的函数
- System Verilog DPI - 在 cpp 中运行并行线程,在 SV 中运行另一个并行线程
- 使用 (cin) 用户输入将其粘贴到 std::system 中,并在另一个终端中运行带有输入的命令
- 如何在 qt 中从另一个线程运行 qt并发时关闭程序
- 助推.如何在另一个测试单元中运行一个测试组件
- 给定的两个代码有什么区别.一个在 ideone 上运行时超出时间限制,另一个工作正常
- C++ 减慢另一个正在运行的进程
- 在另一个 QThread 上运行成员方法时,无法将事件发送到其他线程拥有的对象
- 字符* 复制到另一个字符* 运行时错误
- C++ 菜单代码 - 运行另一个类
- 我无法使用 c++(代码块)中的 fstream 将文件内容复制到另一个。如何运行该文件?
- 运行EXE形成另一个EXE并传递参数
- 只有当输入文件确实包含要读取的另一个值时,我才能让getline(variable,n)运行
- 使用 memcpy 将动态数组的内容复制到另一个动态数组上会产生运行时错误
- 将信息从运行函数发送到另一个
- 我试图运行将文本从一个文件复制到另一个文件的程序
- 一个应用程序可以运行另一个应用软件的代码吗
- UNIX中两个进程之间通信的最佳方式:一个运行ruby服务器,另一个运行C++客户端