!mlocks hung interpretation help needed
===

i try to investigate a hung with windbg and want to know if my assumptions are right. If I call the command
!mlocks i got the following:

    0:000> !mlocks
    Examining SyncBlocks...
    Scanning for ReaderWriterLock instances...
    Scanning for holders of ReaderWriterLock locks...
    Scanning for ReaderWriterLockSlim instances...
    Scanning for holders of ReaderWriterLockSlim locks...
    Examining CriticalSections...
    
      

     
    ClrThread  DbgThread  OsThread    LockType    Lock              LockLevel 
    -------------------------------------------------------------------------- 
    0x640064   -1         0xffffffff  RWLock      000000000339a338  Writer  
    0x6        7          0x1ea8      thinlock    000000000343ddd8  (recursion:0) 

When executeing rwlocks i got the following:


           
     0:000> !rwlock 000000000339a338            
    WriterThread:           0x640064 (DEAD) WriterLevel:            115 WaitingWriterCount:     0 
    WriterEvent:            0 
    WaitingWriterThreadIds: None 
    ReaderCount:            116 
    CurrentReaderThreadIds:  
    WaitingReaderCount:     576 
    ReaderEvent:            80400002 
    WaitingReaderThreadIds:  
    *This lock has 116 orphaned reader locks. 

0:007> !rwlock   

    Address            ReaderCount   WaitingReaderCount     WriterThread   WaitingWriterCount 
    ... 
    000000000339a338           116                  576            0x640064                 0 
    ... 
    00000000053f0688           568                  499            --                       6 
    ...

i got this.
When I call 


        0:000> !dlk Examining SyncBlocks... Scanning for ReaderWriterLock instances... Scanning for holders of ReaderWriterLock locks... Scanning for ReaderWriterLockSlim instances... 
    Scanning for holders of ReaderWriterLockSlim locks... 
    Examining CriticalSections... 
    Scanning for threads waiting on SyncBlocks... 
    Scanning for threads waiting on ReaderWriterLock locks... 
    Scanning for threads waiting on ReaderWriterLocksSlim locks... 
    Scanning for threads waiting on CriticalSections... 
    No deadlocks detected. 

then no deadlock will be detected.
I found this on Tess's blog
[Tess blog][1]

My question is if this threads have to do with my hunging application,
and what the scenario could be.
What does it mean that the thread is DEAD. Can a lock happen on a dead thread? Or do I have to find somewhere else root cause of my hunging application?
Please help me to interpret this output. 

Regards,
Bernhard


  [1]: http://blogs.msdn.com/b/tess/archive/2010/04/27...-with-sosex-dll.aspx