CMutexAutoRelease Class Reference#include <MutexAutoRelease.h>
Collaboration diagram for CMutexAutoRelease:
![]()
Detailed DescriptionDefinition at line 49 of file MutexAutoRelease.h. Constructor & Destructor Documentation
Definition at line 49 of file MutexAutoRelease.cpp. 00051 : m_pMutex(pMutex), 00052 m_ulEntryCount(0) 00053 { 00054 if (bLock) 00055 Aquire(ulMSTimeout); 00056 }
Definition at line 58 of file MutexAutoRelease.cpp. 00059 { 00060 //Check if valid 00061 if (m_pMutex) 00062 //How many entries 00063 for (unsigned long ulCounter=0;ulCounter<m_ulEntryCount;++ulCounter) 00064 m_pMutex->Release(); 00065 }
Member Function Documentation
Definition at line 67 of file MutexAutoRelease.cpp. 00068 { 00069 if (m_pMutex) 00070 //Lock it 00071 if (m_pMutex->Aquire(ulMSTimeout)) 00072 return TRUE; 00073 else 00074 { 00075 //Increase the count 00076 ++m_ulEntryCount; 00077 00078 //And exit 00079 return FALSE; 00080 } 00081 else 00082 return FALSE; 00083 }
Definition at line 85 of file MutexAutoRelease.cpp. 00086 { 00087 if (m_pMutex && m_ulEntryCount) 00088 { 00089 //Decrease the count 00090 --m_ulEntryCount; 00091 00092 //Try to release 00093 if (!m_pMutex->Release()) 00094 { 00095 //Increase the count 00096 ++m_ulEntryCount; 00097 00098 //Exit 00099 return FALSE; 00100 } 00101 else 00102 return TRUE; 00103 } 00104 else 00105 return TRUE; 00106 }
The documentation for this class was generated from the following files: |