Well I bet you thought I finally gone away but I have been trying to track down some form of info that might be helpful on this but to follow up here is some additional info.
Robert Osfield wrote: > I can't really comment much more, threading is heard to debug, next to > impossible when you don't have a machine in front of you that you can > recreate the problem on. I agree but on the positive side I now think from displays to the console that I have inserted that it isn't threads but that for whatever reason some object is being left hanging but debugging it has been difficult - by the time the program hangs even in gdb you can't do a backtrace and then when I kill it of course then the process has stopped and there is nothing to backtrace. I have tried stepping through but that is lines and lines of code hoping you will spot it before it hangs and then be able to do a backtrace. I have but in a lot of outputs at the beginning of destruct methods for the classes and inputs when the destructs finish but that hasn't shown much either. I have include two examples at the end of this. > Isolating which apps fail on exit and which ones don't would be useful. I used runexamples.bat and turned it into a shell script and then let it run and killed the ones I needed to as they hung. do complete normal and return to console mode: osgversion, osgunittests, osgautotransform, osgbillboard, osgblendequation, osgcatch, osgdepthshadow, osggeometry, osghangglide, osgkeyboard, osgkeyboardmouse, osglauncher, osglightpoint, osglogo, osgparticle, osgpointsprite, osgplanets, osgprerendercubemap, osgreflect, osgscalarbar, osgshaders, osgshaderterrain, osgparametric, osgshape, osgstereoimage, osgteapot, osgtexture2D, osgtexture3D, osgtexturerectangle, osgvertexprogram These hang on exit and must be killed osganimate, osgblendequation, osgcallback, osgclip, osgcubemap, osgdistortion, osgforest, osgfxbrowser, osghud, osgimposter, osglight, osglogicop, osgmotionblur, osgmultitexture, osgoccluder, osgparticleeffects, osgpick, osgprerender, osgscribe, osgsequence, osgsimplifier, osgviewer (none of the 4 - but they didn't display right either), osgshadowtexture, osgspheresegment, osgspotlight, osgtext, osgtexture1D, osgwindows did nothing at all osgcameragroup dumptruck.osg (has a thread/stack issue) osgprecipitation --rain 0.5 lz.osg (has a thread/stack issue - seg fault) osgprecipitation --snow 0.5 lz.osg (has a thread/stack issue - seg fault) osgsimulation (doesn't exist) Here are the examples of my displays I added and the first example is osgviewer which does hang: [EMAIL PROTECTED] /usr/src/OpenSceneGraph $ osgviewer cow.osg Constructing osg::View Constructing osgViewer::View osgViewer:Viewer::construct() Created New Thread 0 Process: 304611336 Scene::Scene() constructed. Viewer::run() GraphicsWindowWin32::setPixelFormat() - Found a matching pixel format but withou t the WGL_SWAP_METHOD_ARB specification for screen #0 Win32WindowingSystem::OpenGLContext::~OpenGLContext() beginning Win32WindowingSystem::OpenGLContext::~OpenGLContext() finishing Destructing Camera. Done destructing Camera. Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Destructing Camera. Done destructing Camera. Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Viewport::~Viewport() terminating Viewport::~Viewport() terminating osgViewer::~Viewer() Viewer::stopThreading() - and number barrier threads is 1 and threadrunning = 0 GraphicsWindowWin32::destroyWindow starting GraphicsWindowWin32::destroyWindow finished finish Viewer::~Viewer() Destructing Thread 0 Process: 304611336 Thread 0 Process: 304611336 being deleted Thread 0 Process: 304611336 was deleted Viewport::~Viewport() terminating Destructing osgViewer::View Scene::Scene() destructed. Destructing osg::View Done destructing osg::View Destructing Camera. Done destructing Camera. GraphicsWindowWin32::~GraphicsWindowWin32() begin to close GraphicsWindowWin32::destroyWindow starting GraphicsWindowWin32::destroyWindow finished GraphicsWindowWin32::destroyWindow starting GraphicsWindowWin32::destroyWindow finished GraphicsWindowWin32::~GraphicsWindowWin32() finished GrpahicsContext::~GraphicsContext() beginning GraphicsContext::~GraphicsContext() finishing Viewport::~Viewport() terminating Group::~Group() beginning with 1 children Group::~Group() removing Parent for iterator which has 1 parents Group::~Group() finishing with 1 children Group::~Group() beginning with 1 children Group::~Group() removing Parent for iterator which has 1 parents Group::~Group() finishing with 1 children Image::~Image() beginning Image:;~Image() finishing Win32WindowingSystem::~Win32WindowingSystem() beginning Win32WindowingSystem::~Win32WindowsingSystem() finishing Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Destructing Camera. Done destructing Camera. Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Destructing Camera. Done destructing Camera. Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Image::~Image() beginning Image:;~Image() finishing Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Program::~Program() beginning with 0 shaders Program::~Program() finishing with 0 shaders Projection::~Projection() terminating Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Viewport::~Viewport() terminating at this point I have to kill it as it will just hang here forever. Now this example is osglogo which completes normal [EMAIL PROTECTED] /usr/src/OpenSceneGraph $ osglogo Constructing osg::View Constructing osgViewer::View osgViewer:Viewer::construct() Created New Thread 0 Process: 304611336 Scene::Scene() constructed. Viewer::run() GraphicsWindowWin32::setPixelFormat() - Found a matching pixel format but withou t the WGL_SWAP_METHOD_ARB specification for screen #0 Win32WindowingSystem::OpenGLContext::~OpenGLContext() beginning Win32WindowingSystem::OpenGLContext::~OpenGLContext() finishing Destructing Camera. Done destructing Camera. Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Destructing Camera. Done destructing Camera. Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Viewport::~Viewport() terminating Viewport::~Viewport() terminating osgViewer::~Viewer() Viewer::stopThreading() - and number barrier threads is 1 and threadrunning = 0 GraphicsWindowWin32::destroyWindow starting GraphicsWindowWin32::destroyWindow finished finish Viewer::~Viewer() Destructing Thread 0 Process: 304611336 Thread 0 Process: 304611336 being deleted Thread 0 Process: 304611336 was deleted Viewport::~Viewport() terminating Destructing osgViewer::View Scene::Scene() destructed. Destructing osg::View Done destructing osg::View Destructing Camera. Done destructing Camera. GraphicsWindowWin32::~GraphicsWindowWin32() begin to close GraphicsWindowWin32::destroyWindow starting GraphicsWindowWin32::destroyWindow finished GraphicsWindowWin32::destroyWindow starting GraphicsWindowWin32::destroyWindow finished GraphicsWindowWin32::~GraphicsWindowWin32() finished GrpahicsContext::~GraphicsContext() beginning GraphicsContext::~GraphicsContext() finishing Viewport::~Viewport() terminating Group::~Group() beginning with 1 children Group::~Group() removing Parent for iterator which has 1 parents Group::~Group() finishing with 1 children Group::~Group() beginning with 2 children Group::~Group() removing Parent for iterator which has 1 parents Group::~Group() removing Parent for iterator which has 1 parents Group::~Group() finishing with 2 children Group::~Group() beginning with 3 children Group::~Group() removing Parent for iterator which has 1 parents Group::~Group() removing Parent for iterator which has 1 parents Group::~Group() removing Parent for iterator which has 1 parents Group::~Group() finishing with 3 children Group::~Group() beginning with 1 children Group::~Group() removing Parent for iterator which has 1 parents Group::~Group() finishing with 1 children Group::~Group() beginning with 1 children Group::~Group() removing Parent for iterator which has 1 parents Group::~Group() finishing with 1 children Image::~Image() beginning Image:;~Image() finishing Group::~Group() beginning with 0 children Group::~Group() finishing with 0 children Win32WindowingSystem::~Win32WindowingSystem() beginning Win32WindowingSystem::~Win32WindowsingSystem() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing Image::~Image() beginning Image:;~Image() finishing [EMAIL PROTECTED] /usr/src/OpenSceneGraph $ _______________________________________________ osg-users mailing list [email protected] http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
