查看: 1118|回复: 2

MFC嵌入OSG的线程安全问题

[复制链接]

该用户从未签到

发表于 2017-12-29 16:21:47 | 显示全部楼层 |阅读模式
首先MFC得工程自己有一个UI线程,当CView将句柄传递给OSG时。OSG是不是用的CView的句柄绘图的?如果是的话OSG自己的线程成要用到这个句柄,然而MFC的UI线程也会用到它。这样不会出现问题么?

该用户从未签到

发表于 2018-1-16 10:34:22 | 显示全部楼层
你的理解不对,view是不会用到MFC的UI线程的,窗口的handler给osg后,osg 就接管了消息循环,不会冲突

该用户从未签到

发表于 2018-1-19 14:32:26 | 显示全部楼层
应用程序的消息泵由OSG 窗口模块接管了,也就是WindowProc函数被OSG窗口模块重载了,windows绘制背景与客户区的消息被“空实现”,即什么都不做,你可以看下代码。当然非客户区还是由windows来绘制。窗口上下文的使用可能会产生冲突,窗口资源同时使用看起来也没问题(也没有发生异常),我猜内部实现应该有锁机制。只要你管理好绘制顺序,窗口内容就不会错乱。也有其他同事使用GDI+OpenGL 绘制叠加显示效果的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表