查看: 1318|回复: 1

关于osg中智能指针的问题

[复制链接]

该用户从未签到

发表于 2011-10-1 14:46:54 | 显示全部楼层 |阅读模式
在osg中默认定义一个_OSG_REFERENCED_USE_ATOMIC_OPERATIONS宏,在ref()和unfef()函数中如果该宏已经定义过后,即该该操作是安全的。
个人想法:假设在两个线程A和B中,同时将智能指针对象x赋值给不同的对象,在赋值过程中两个线程同时执行了unref函数,这样可能造成引用计数为脏数据。
不知道osg中如何保证该操作是安全的。

在osg3.0中,默认定义了OSGUTIL_RENDERBACKEND_USE_REF_PTR,这样就不能使用DeleteHandler释放节点,是不是现在osg中的节点释放方法比DeleteHandler更好点?

该用户从未签到

发表于 2011-10-3 22:14:29 | 显示全部楼层
OpenThreads::Mutex就是来解决同步问题的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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