HI Zach,
On 3/14/07, Zach Deedler <[EMAIL PROTECTED]> wrote:
Hi Robert,
DatabasePager::run() executes readNodeFile. Thus, the readNodeFile is being
called within the paging thread. So, don't we have to worry about mutexes
that are in here?
Yes you don't need to worry about mutexes in the plugins as they are
there just to protect against possible multi-threaded usage when the
plugin isn't thread safe. In the case of normal database pager use
the only thread access the plugin is the single DatabasePager thread,
so the mutexes will always be aquired and released safely and without
block on each readNodeFile call dispatched from the pager thread.
I noticed the use of mutexes keeps the locking to a minimum, but I didn't
trace through all of readNodeFile.
This would happen in a single proc case though anyways. So, I'm just gonna
drop trying to figure this out. I just hate to leave a problem unsolved.
I'll just have to accept the short-term solution of running single proc, and
move to the long-term of linux (assuming I don't get the same problem).
It would interesting to see if the "real-time" patches for Windows
would help. I suspect the OS is not handling the multi-processing
well when trying to read files at the same time. Vista is supposed to
be better and MP support, but is pretty crappy on the graphics
performance stakes.
Robert.
_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/