Hello,

My program has an osg::viewer as a view widget of a Qt window. An intersectorVisitor object is initialised at the start of the program. The osg::viewer updates its children nodes as a normal viewer does, and updates the transform matrix of intersectorVisitor at the same time. I make another thread to do call of "node->accept(intersectorVisitor)", where the node is the root node of osg::viewer. In case that the two processes might conflict with each other I set lock with Qmutex when the osg::viewer updates and when "node->accept(intersectorVisitor)" is called in another thread. But the result turns out to be wrong. When I let the two processes run freely without locking them, then the result is right.

I am wondering what happens here. That is to say, what intersectorVositor will do when it itself is locked or the nodes that it visits are locked.

Thank you very much in advance!

Shuiying


_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to