Mhh, ok difficult to explain (for me):

The important part is
"_threadHoldingMutex==OpenThreads::Thread::CurrentThread() &&
_lockCount>0" in ReentrantMutex::lock().

You have to take into account that one noted above is not an atomic
operation, so between 

"_threadHoldingMutex==OpenThreads::Thread::CurrentThread()"

and

"_lockCount>0"

the other thread may get some time, trying to lock the ReentrantMutex.


Richard
_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/

Reply via email to