关于网友提出的“ 关于mfc异步调用线程的问题”问题疑问,本网通过在网上对“ 关于mfc异步调用线程的问题”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: 关于mfc异步调用线程的问题
解决方案1: C++11开线程很简单的
std::thread tt(&ClassName::FunName, this);
tt.detach();
上面就是基本结构,如果你的FunName方法带有参数,就在this后面加参数就行了,如:
void FunName(int i,int j);
std::thread tt(&ClassName::FunName, this,1,2);
至于detach和join,自己可以百度看看区别,根据需求选择
解决方案2:
耗时导致ui阻塞了,解决办法就是开线程。 OnClick就开工作线程,修改工作状态为进行中。(比如设置在lable上显示)
工作线程完成了就SendMessage 给窗口 定义个WM_USER+ xxx 为导出完成消息。 窗口消息里把这个消息处理下,弹出窗口提示,什么的,你自己看着办
-
QT多线程异步调用,类似MFC的PostThreadMessage
解决方案3:
你只要保证list的生命期,可以传指针等过去。
解决方案4: onBnclick 中启动后台线程, 再启动一个定时器监视后台线程运行情况
-
[zz]谈.Net委托与线程——创建无阻塞的异步调用(二)
以上介绍了“ 关于mfc异步调用线程的问题”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/4532103.html