Re: Multithreading, crash
- From: "A.Cicak" <ovca@xxxxxxxxxxx>
- Date: Fri, 7 Apr 2006 19:26:32 +0200
Hello,
Thanks for response, call stack is different depending on how much I prune
the code, but always in some not so logical place, for example in:
ntdll.dll!7c901230()
[Frames below may be incorrect and/or missing, no symbols loaded for
ntdll.dll]
d3d9d.dll!01cb3f81()
d3d9d.dll!01cb4069()
d3d9d.dll!01cb3a15()
msvcp80d.dll!_Mtxlock(_RTL_CRITICAL_SECTION * _Mtx=0x10573230) Line 45 C
msvcp80d.dll!_Mtxunlock(_RTL_CRITICAL_SECTION * _Mtx=0x10573230) Line 54
C
msvcp80d.dll!std::_Lockit::~_Lockit() Line 69 + 0x14 bytes C++
msvcp80d.dll!std::_Container_base::_Orphan_all() Line 200 + 0x8 bytes C++
msvcp80d.dll!std::_Container_base::~_Container_base() Line 107 C++
Sheepoid.exe!std::_Vector_val<long,std::allocator<long>
::~_Vector_val<long,std::allocator<long> >() + 0x35 bytes C++002542d8()
ntdll.dll!7c9011a7()
ntdll.dll!7c923f31()
ntdll.dll!7c910945()
ntdll.dll!7c91094e()
kernel32.dll!7c81ca3e()
Sheepoid.exe!std::vector<long,std::allocator<long>
::~vector<long,std::allocator<long> >() Line 547 + 0x2a bytes C++Sheepoid.exe!`dynamic atexit destructor for 'mIzabrani''() + 0x28 bytes C++
this happens even if I dont do anything special with Vector 'mIzabrani''(),
(for example I just declare it as vector<long> mIzabrani;)
If I completely remove this vector and any code related to it, crash happens
in some other object no matter how simple it is, there is no dynamic memory
management or anything fancy, it just crashes randomly. Any idea, could it
be something with Nvidia drivers?
"Robert Dunlop [MS MVP]" <rdunlop@xxxxxxxx> wrote in message
news:OvDNAsYWGHA.3496@xxxxxxxxxxxxxxxxxxxxxxx
"A.Cicak" <ovca@xxxxxxxxxxx> wrote in message
news:uTvvvUXWGHA.3972@xxxxxxxxxxxxxxxxxxxxxxx
[clip]
When I switch to REF I get memfini! again (no errors, no crash). (errors
happen on GeForce go 6600). I am using multithreaded debug dll
configuration
(since I am using SDL with DX), could this cause any problems? Also I am
using october SDK. I pruned my app and when it contains no Mesh
allocation
(just textures) this does not happen, however when I just load mesh (I
tried
many, simplest) from x and release it this happens again (only in HAL,
debug
dx, debug conf, REF is always clean, relase DX always clean, relase conf
always clean).
Maybe its something related to threads, break always happens in xmtx.c:
_RELIABILITY_CONTRACT
void __CLRCALL_PURE_OR_CDECL _Mtxlock(_Rmtx *_Mtx)
{ /* lock mutex */
#ifdef _M_CEE
System::Threading::Thread::BeginThreadAffinity();
#endif
EnterCriticalSection(_Mtx);}
What does the call stack leading up to this show? I would start by
tracking back and figure out what call in your application is leading up
to the break.
--
Robert Dunlop
The X-Zone
http://www.directxzone.com/
Microsoft DirectX MVP
-------------
The opinions expressed in this message are my own personal views and do
not reflect the official views of the Microsoft Corporation.
The MVP program does not constitute employment or contractual obligation
with Microsoft.
.
- References:
- Multithreading, crash
- From: A.Cicak
- Re: Multithreading, crash
- From: Robert Dunlop [MS MVP]
- Multithreading, crash
- Prev by Date: Re: Filtering the Cube Texture that created with D3DUSAGE_RENDERTA
- Next by Date: moving from GDI+ to DirectX
- Previous by thread: Re: Multithreading, crash
- Next by thread: Re: D3DPRESENT_DONOTWAIT, why don't you work?
- Index(es):
Relevant Pages
|
Loading