mutexlock.h 1021 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #ifndef _MUTEX_LOCK_H
  2. #define _MUTEX_LOCK_H
  3. ///////////////////////////////////////////////////////////////////////////////
  4. /*///////////////////////////////////////////////////////////////////////////* /
  5. #if defined(__cplusplus)
  6. extern "C" {
  7. #endif
  8. /*///////////////////////////////////////////////////////////////////////////*/
  9. ///////////////////////////////////////////////////////////////////////////////
  10. #include <windows.h>
  11. ///////////////////////////////////////////////////////////////////////////////
  12. class CMutexLock
  13. {
  14. public:
  15. CMutexLock();
  16. CMutexLock(char *szLockName);
  17. virtual ~CMutexLock();
  18. public:
  19. void CreateLock(char *szLockName, BOOL bLock = FALSE);
  20. void DestroyLock();
  21. void Lock();
  22. void UnLock();
  23. private:
  24. char m_szLockName[64];
  25. HANDLE m_hMutex;
  26. BOOL m_bLock;
  27. };
  28. /*///////////////////////////////////////////////////////////////////////////* /
  29. #if defined(__cplusplus)
  30. }
  31. #endif
  32. /*///////////////////////////////////////////////////////////////////////////*/
  33. #endif //_MUTEX_LOCK_H