MFC多线程,在同一窗口下运行显示

zanmengpi0941 2016-08-19 05:24:38
本人对MFC不是很了解,因为大作业需要接触MFC界面编程,并涉及多线程问题,希望有大牛可以多解释一下,多谢!
我想实现的功能是:
1.利用OPENCV,通过摄像头对人手势进行实时跟踪识别,包括石头,剪刀和布三种手势(单独的手势识别跟踪程序无问题),其中,手势识别程序主要执行机构是一个while循环,大致代码如下:
while(capture) //capture为摄像头获取信号,此处为实时跟踪计算识别

手势检测识别....

此程序是独占CPU的,只要一开始就会不断在while循环中执行;
2.利用随机函数,随机生成1,2,3三个数中的一个,以此代表电脑猜拳结果;与手势识别程序没有任何数据交互;

因为手势识别程序有独占特性,在循环检测过程中无法进行其他不相关的计算,所以我考虑到了多线程,之前在windows下面简单的使用过handle以及CreateThread函数,但是在MFC下使用工作线程或用户线程时(都尝试了一下),都遇到了启动手势识别线程之后无法进行其他操作的问题,我想问一下难道MFC窗口的多线程不是真正意义上的多线程吗?(我看到过有人说MFC窗口是单线程的,汗~~)。
我也想过其他许多打断手势检测途径,比如在电脑出拳线程中postmessage一个信号给手势识别线程,但是遇到了启动手势识别线程就无法执行电脑出拳线程的问题;也考虑过额外设置一个手势识别窗口,并设置一个on_clicked_button触发器来取消手势识别线程和窗口,但是尝试之后并不能打断while(capture)的执行,好顽强啊T.T,感觉我实现的好像并不是真正的多线程,还是单线程顺序执行。
看了cbNotes这位大大的博文,收益颇多,但是里面所述的用户线程,复制文件实际也是单任务单线程,只涉及到复制文件,新窗口只是更新显示复制文件的进度,所以怀疑MFC是否真的是多线程,cbNotes大大的博文地址:http://blog.csdn.net/cbnotes/article/details/8465212
哪位大大能帮我解决一下呢?或者提出一些新的解决方案,不甚感激!
...全文
1371 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
开个子线程,里面做运算,然后用消息函数发出去,操纵UI界面显示更新
赵4老师 2016-08-25
  • 打赏
  • 举报
回复
引用 4 楼 xinkexue 的回复:
引用 1楼赵4老师 的回复:
Multiple Threads in the User Interface http://msdn.microsoft.com/zh-cn/library/ms810439.aspx
这个是上个世纪的太老了吧
姜是老的辣
可爱的芒果酱 2016-08-24
  • 打赏
  • 举报
回复
引用 1楼赵4老师 的回复:
Multiple Threads in the User Interface http://msdn.microsoft.com/zh-cn/library/ms810439.aspx
这个是上个世纪的太老了吧
shenyi0106 2016-08-24
  • 打赏
  • 举报
回复
1. 首先,不要在主线程(也就是UI线程)中做CPU密集型的计算,否则你的程序必须卡死!不卡死的话,比尔都回来拜你为师。 2. 需要理解worker线程和UI线程的区别,以及worker线程如何更新UI线程,否则你的程序要么卡死,要么crash。 3. 算法的重要性。在CPU密集型的计算中,算法是很重要的,好的算法和差的算法有时会相差100%。 当然,这都是理论建议。你没给出具体代码,咱也不可能给出具体建议。
zgl7903 2016-08-20
  • 打赏
  • 举报
回复
线程 while 循环中适当 Sleep, 以让出CPU给其它线程
Rockismej 2016-08-20
  • 打赏
  • 举报
回复
你不去查资料不去网上搜索,一上来就发帖拿来主义,还对自己不知道的东西就是质疑它行不行,你觉得谁会回答你的问题?
赵4老师 2016-08-19
  • 打赏
  • 举报
回复
Multiple Threads in the User Interface http://msdn.microsoft.com/zh-cn/library/ms810439.aspx

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧