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
> > [email protected]
> >
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
> >
> >
> _______________________________________________
> osg-users mailing list
> [email protected]
> 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
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org