Robert, Here are all 5 thread stack traces.
Glenn On Mon, Mar 31, 2008 at 12:02 PM, Robert Osfield <[EMAIL PROTECTED]> wrote: > Hi Glenn, > > Thanks for the track trace, unfortunately on its own doesn't pinpoint > what might be wrong with the thread cancellation. Could you get the > trace traces for the other threads that are still running? > > Robert. > > On Mon, Mar 31, 2008 at 4:43 PM, Glenn Waldron <[EMAIL PROTECTED]> wrote: > > Following up.... here is a stack trace from the debugger. > > > > > > On Sat, Mar 29, 2008 at 1:12 PM, Glenn Waldron <[EMAIL PROTECTED]> > wrote: > > > Not sure whether this has been reported, but vpbmaster does not exit > under > > Win32. Once the build completes you have to kill it from the Windows > task > > manager. I have not had time to look into it yet - just wanted to throw > it > > out there for now.. > > > > > > Glenn > > > > > > -- > > > Glenn Waldron : Pelican Mapping : http://pelicanmapping.com : > 703-652-4791 > > > > _______________________________________________ > > osg-users mailing list > > osg-users@lists.openscenegraph.org > > > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org > > > > > _______________________________________________ > osg-users mailing list > osg-users@lists.openscenegraph.org > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org > -- Glenn Waldron : Pelican Mapping : http://pelicanmapping.com : 703-652-4791
MAIN VPBMASTER THREAD: > OpenThreadsd.dll!OpenThreads::cooperativeWait(void * > waitHandle=0x000016c8, unsigned long timeout=0xffffffff) Line 54 + 0x10 > bytes C++ OpenThreadsd.dll!OpenThreads::Win32ConditionPrivateData::broadcast() Line 71 + 0x15 bytes C++ OpenThreadsd.dll!OpenThreads::Condition::broadcast() Line 100 C++ osgd.dll!OpenThreads::Block::release() Line 69 + 0x13 bytes C++ osgd.dll!osg::OperationQueue::releaseOperationsBlock() Line 221 C++ osgd.dll!osg::OperationThread::cancel() Line 325 C++ osgd.dll!osg::OperationThread::~OperationThread() Line 266 C++ vpbd.dll!osg::OperationThread::`scalar deleting destructor'() + 0x1a bytes C++ osgd.dll!osg::Referenced::unref() Line 155 + 0x23 bytes C++ vpbd.dll!osg::ref_ptr<osg::OperationThread>::~ref_ptr<osg::OperationThread>() Line 30 + 0x24 bytes C++ vpbd.dll!std::_List_nod<osg::ref_ptr<osg::OperationThread>,std::allocator<osg::ref_ptr<osg::OperationThread> > >::_Node::~_Node() + 0x19 bytes C++ vpbd.dll!std::_List_nod<osg::ref_ptr<osg::OperationThread>,std::allocator<osg::ref_ptr<osg::OperationThread> > >::_Node::`scalar deleting destructor'() + 0x16 bytes C++ vpbd.dll!std::_Destroy<std::_List_nod<osg::ref_ptr<osg::OperationThread>,std::allocator<osg::ref_ptr<osg::OperationThread> > >::_Node>(std::_List_nod<osg::ref_ptr<osg::OperationThread>,std::allocator<osg::ref_ptr<osg::OperationThread> > >::_Node * _Ptr=0x039f8588) Line 61 C++ vpbd.dll!std::allocator<std::_List_nod<osg::ref_ptr<osg::OperationThread>,std::allocator<osg::ref_ptr<osg::OperationThread> > >::_Node>::destroy(std::_List_nod<osg::ref_ptr<osg::OperationThread>,std::allocator<osg::ref_ptr<osg::OperationThread> > >::_Node * _Ptr=0x039f8588) Line 161 + 0x9 bytes C++ vpbd.dll!std::list<osg::ref_ptr<osg::OperationThread>,std::allocator<osg::ref_ptr<osg::OperationThread> > >::clear() Line 827 C++ vpbd.dll!std::list<osg::ref_ptr<osg::OperationThread>,std::allocator<osg::ref_ptr<osg::OperationThread> > >::_Tidy() Line 1185 C++ vpbd.dll!std::list<osg::ref_ptr<osg::OperationThread>,std::allocator<osg::ref_ptr<osg::OperationThread> > >::~list<osg::ref_ptr<osg::OperationThread>,std::allocator<osg::ref_ptr<osg::OperationThread> > >() Line 516 C++ vpbd.dll!vpb::Machine::~Machine() Line 159 + 0x52 bytes C++ vpbd.dll!vpb::Machine::`vector deleting destructor'() + 0x57 bytes C++ osgd.dll!osg::Referenced::unref() Line 155 + 0x23 bytes C++ vpbd.dll!osg::ref_ptr<vpb::Machine>::~ref_ptr<vpb::Machine>() Line 30 + 0x24 bytes C++ vpbd.dll!std::_List_nod<osg::ref_ptr<vpb::Machine>,std::allocator<osg::ref_ptr<vpb::Machine> > >::_Node::~_Node() + 0x19 bytes C++ vpbd.dll!std::_List_nod<osg::ref_ptr<vpb::Machine>,std::allocator<osg::ref_ptr<vpb::Machine> > >::_Node::`scalar deleting destructor'() + 0x16 bytes C++ vpbd.dll!std::_Destroy<std::_List_nod<osg::ref_ptr<vpb::Machine>,std::allocator<osg::ref_ptr<vpb::Machine> > >::_Node>(std::_List_nod<osg::ref_ptr<vpb::Machine>,std::allocator<osg::ref_ptr<vpb::Machine> > >::_Node * _Ptr=0x039f9938) Line 61 C++ vpbd.dll!std::allocator<std::_List_nod<osg::ref_ptr<vpb::Machine>,std::allocator<osg::ref_ptr<vpb::Machine> > >::_Node>::destroy(std::_List_nod<osg::ref_ptr<vpb::Machine>,std::allocator<osg::ref_ptr<vpb::Machine> > >::_Node * _Ptr=0x039f9938) Line 161 + 0x9 bytes C++ vpbd.dll!std::list<osg::ref_ptr<vpb::Machine>,std::allocator<osg::ref_ptr<vpb::Machine> > >::clear() Line 827 C++ vpbd.dll!std::list<osg::ref_ptr<vpb::Machine>,std::allocator<osg::ref_ptr<vpb::Machine> > >::_Tidy() Line 1185 C++ vpbd.dll!std::list<osg::ref_ptr<vpb::Machine>,std::allocator<osg::ref_ptr<vpb::Machine> > >::~list<osg::ref_ptr<vpb::Machine>,std::allocator<osg::ref_ptr<vpb::Machine> > >() Line 516 C++ vpbd.dll!vpb::MachinePool::~MachinePool() Line 438 + 0x1e bytes C++ vpbd.dll!vpb::MachinePool::`vector deleting destructor'() + 0x54 bytes C++ osgd.dll!osg::Referenced::unref() Line 155 + 0x23 bytes C++ vpbd.dll!osg::ref_ptr<vpb::MachinePool>::operator=(vpb::MachinePool * ptr=0x00000000) Line 54 + 0x11 bytes C++ vpbd.dll!vpb::System::~System() Line 83 C++ vpbd.dll!vpb::System::`vector deleting destructor'() + 0x57 bytes C++ osgd.dll!osg::Referenced::unref() Line 155 + 0x23 bytes C++ vpbd.dll!osg::ref_ptr<vpb::System>::~ref_ptr<vpb::System>() Line 30 + 0x24 bytes C++ vpbd.dll!`vpb::System::instance'::`2'::`dynamic atexit destructor for 's_System''() + 0xd bytes C++ vpbd.dll!_CRT_INIT(void * hDllHandle=0x10000000, unsigned long dwReason=0x00000000, void * lpreserved=0x00000001) Line 420 C vpbd.dll!__DllMainCRTStartup(void * hDllHandle=0x10000000, unsigned long dwReason=0x00000000, void * lpreserved=0x00000001) Line 512 + 0x11 bytes C vpbd.dll!_DllMainCRTStartup(void * hDllHandle=0x10000000, unsigned long dwReason=0x00000000, void * lpreserved=0x00000001) Line 462 + 0x11 bytes C THREAD 1: > OpenThreadsd.dll!OpenThreads::cooperativeWait(void * > waitHandle=0x000016dc, unsigned long timeout=0xffffffff) Line 49 + 0x14 > bytes C++ OpenThreadsd.dll!OpenThreads::Win32ConditionPrivateData::wait(OpenThreads::Mutex & external_mutex={...}, long timeout_ms=0xffffffff) Line 107 + 0x1d bytes C++ OpenThreadsd.dll!OpenThreads::Condition::wait(OpenThreads::Mutex * mutex=0x039f5828) Line 63 C++ osgd.dll!OpenThreads::Block::block() Line 42 + 0x17 bytes C++ osgd.dll!osg::OperationQueue::getNextOperation(bool blockIfEmpty=true) Line 65 C++ osgd.dll!osg::OperationThread::run() Line 399 + 0x15 bytes C++ OpenThreadsd.dll!OpenThreads::ThreadPrivateActions::StartThread(void * data=0x039f7df0) Line 112 + 0xf bytes C++ msvcr80d.dll!_callthreadstartex() Line 348 + 0xf bytes C msvcr80d.dll!_threadstartex(void * ptd=0x039f96e8) Line 331 C THREAD 2: > OpenThreadsd.dll!OpenThreads::cooperativeWait(void * > waitHandle=0x000016dc, unsigned long timeout=0xffffffff) Line 49 + 0x14 > bytes C++ OpenThreadsd.dll!OpenThreads::Win32ConditionPrivateData::wait(OpenThreads::Mutex & external_mutex={...}, long timeout_ms=0xffffffff) Line 107 + 0x1d bytes C++ OpenThreadsd.dll!OpenThreads::Condition::wait(OpenThreads::Mutex * mutex=0x039f5828) Line 63 C++ osgd.dll!OpenThreads::Block::block() Line 42 + 0x17 bytes C++ osgd.dll!osg::OperationQueue::getNextOperation(bool blockIfEmpty=true) Line 65 C++ osgd.dll!osg::OperationThread::run() Line 399 + 0x15 bytes C++ OpenThreadsd.dll!OpenThreads::ThreadPrivateActions::StartThread(void * data=0x039f85e0) Line 112 + 0xf bytes C++ msvcr80d.dll!_callthreadstartex() Line 348 + 0xf bytes C msvcr80d.dll!_threadstartex(void * ptd=0x039f8fa0) Line 331 C THREAD 3: OpenThreadsd.dll!OpenThreads::cooperativeWait(void * waitHandle=0x000016dc, unsigned long timeout=0xffffffff) Line 49 + 0x14 bytes C++ OpenThreadsd.dll!OpenThreads::Win32ConditionPrivateData::wait(OpenThreads::Mutex & external_mutex={...}, long timeout_ms=0xffffffff) Line 107 + 0x1d bytes C++ OpenThreadsd.dll!OpenThreads::Condition::wait(OpenThreads::Mutex * mutex=0x039f5828) Line 63 C++ osgd.dll!OpenThreads::Block::block() Line 42 + 0x17 bytes C++ osgd.dll!osg::OperationQueue::getNextOperation(bool blockIfEmpty=true) Line 65 C++ osgd.dll!osg::OperationThread::run() Line 399 + 0x15 bytes C++ OpenThreadsd.dll!OpenThreads::ThreadPrivateActions::StartThread(void * data=0x039f8d28) Line 112 + 0xf bytes C++ msvcr80d.dll!_callthreadstartex() Line 348 + 0xf bytes C msvcr80d.dll!_threadstartex(void * ptd=0x039f8858) Line 331 C THREAD 4: OpenThreadsd.dll!OpenThreads::cooperativeWait(void * waitHandle=0x000016dc, unsigned long timeout=0xffffffff) Line 49 + 0x14 bytes C++ OpenThreadsd.dll!OpenThreads::Win32ConditionPrivateData::wait(OpenThreads::Mutex & external_mutex={...}, long timeout_ms=0xffffffff) Line 107 + 0x1d bytes C++ OpenThreadsd.dll!OpenThreads::Condition::wait(OpenThreads::Mutex * mutex=0x039f5828) Line 63 C++ osgd.dll!OpenThreads::Block::block() Line 42 + 0x17 bytes C++ osgd.dll!osg::OperationQueue::getNextOperation(bool blockIfEmpty=true) Line 65 C++ osgd.dll!osg::OperationThread::run() Line 399 + 0x15 bytes C++ OpenThreadsd.dll!OpenThreads::ThreadPrivateActions::StartThread(void * data=0x039f8d28) Line 112 + 0xf bytes C++ msvcr80d.dll!_callthreadstartex() Line 348 + 0xf bytes C msvcr80d.dll!_threadstartex(void * ptd=0x039f8858) Line 331 C
_______________________________________________ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org