Hi J.P,

On Fri, May 23, 2008 at 9:53 AM, J.P. Delport <[EMAIL PROTECTED]> wrote:
> Yes, you are right for the case where a lock is only released by the same
> thread that acquired it. This is the normal use case that e.g. scopedlock
> enforces.

Ahhh this is a different issue, as you say ScopedLock does enforce that a
single thread does both the lock and unlock.

The OpenThreads::ReentrantMutex is perhaps way more of these issue might
arise, as it attempts to implement a mutex that can be called recusively, so
in theory behaving the same between Window threads and pthreads.   However,
there have been instances where I've found problems in code rely on
ReentrantMutex, alas I don't recall the details now.

DatabasePager itself doesn't rely on an mutexes that need to
recursive/reentrant,
but some plugins have serialize code in them to prevent problems with
multi-threading.

Perhaps some plugins aren't yet thread safe, and don't have anything
to serialized access
to them...

> Yes, I also wish there was an easy wrapper around OpenThreads to help one
> debug the multi-threaded execution.

What do you have in mind w.r.t an "easy wrapper around OpenThreads"?

Debugging multi-threaded execution is certainly not easy so could do
with tools to help you.

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

Reply via email to