42 return ::TryEnterCriticalSection(
this);
63 Create(pSecurity, bManualReset, bInitialState, pszName);
89 return ::SetEvent(*
this);
95 return ::ResetEvent(*
this);
101 return ::PulseEvent(*
this);
122 Create(pSecurity, bInitialOwner, pszName);
148 return ::ReleaseMutex(*
this);
181 return hSemaphore !=
NULL;
189 return hSemaphore !=
NULL;
195 return ::ReleaseSemaphore(*
this, nReleaseCount, pnOldCount);
CEvent(BOOL bManualReset, BOOL bInitialState)
BOOL Create(LPSECURITY_ATTRIBUTES pSecurity, BOOL bManualReset, BOOL bInitialState, LPCTSTR pszName)
CEvent(LPSECURITY_ATTRIBUTES pSecurity, BOOL bManualReset, BOOL bInitialState, LPCTSTR pszName)
BOOL Open(DWORD dwAccess, BOOL bInheritHandle, LPCTSTR pszName)
void Attach(_In_ HANDLE handle)
BOOL Create(LPSECURITY_ATTRIBUTES pSecurity, BOOL bInitialOwner, LPCTSTR pszName)
CMutex(LPSECURITY_ATTRIBUTES pSecurity, BOOL bInitialOwner, LPCTSTR pszName)
CMutex(BOOL bInitialOwner)
BOOL Open(DWORD dwAccess, BOOL bInheritHandle, LPCTSTR pszName)
BOOL Open(DWORD dwAccess, BOOL bInheritHandle, LPCTSTR pszName)
CSemaphore(LPSECURITY_ATTRIBUTES pSecurity, LONG nInitialCount, LONG nMaxCount, LPCTSTR pszName)
CSemaphore(LONG nInitialCount, LONG nMaxCount)
CSemaphore(HANDLE hSemaphore)
BOOL Create(LPSECURITY_ATTRIBUTES pSecurity, LONG nInitialCount, LONG nMaxCount, LPCTSTR pszName)
BOOL Release(LONG nReleaseCount=1, LPLONG pnOldCount=NULL)
CSemaphore(CSemaphore &hSemaphore)
static BOOL bInheritHandle
VOID WINAPI InitializeCriticalSection(OUT LPCRITICAL_SECTION lpCriticalSection)
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
void WINAPI DeleteCriticalSection(PCRITICAL_SECTION)