mutexlock.h 1.0 KB

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