Hi Stefan,

On 2/9/07, Stefan Eilemann <[EMAIL PROTECTED]> wrote:
One window.

In the original test I was running singlethreaded. I've just tested
with all threading models from your 'osgviewer threading model control
and stats report' mail, and osgviewer always hangs in XLockDisplay.

At what point does it hang, still just on exit.

Just out ouf curiosity, do you need XInitThreads? In my experience,
as long as you use a Display* connection only from a single thread,
i.e., you open one connection per thread, XInitThreads is not needed.
In Equalizer and MPK I haven't needed it for >5 years.

osgViewer is polling events from the main loop, but potentially
rendering from another thread, so there are two threads using the same
Display connection.  I found that I needed XInitThreads to make things
work on my dual core, dual GPU system here.  I haven't noticed any
performance hit with using it.

If you are running single threaded then XInitThreads won't be required.

Potentially we could run a separate thread to get the events and have
this thread with its own connection, like Producer does.  Producer has
had exit problems due this event thread, which haven't been easy to
resolve, so I'm hesitant to go down this route.

The other route would be to have separate Display connection for each
window for the main thread.  This might be the cleanest alternative
solution.

XInitThreads itself shouldn't be causing problems, but solving them...
so I wouldn't expect this to be a avenue to look for a solution.

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

Reply via email to