LockMgr.cpp
上传用户:jstlsd
上传日期:2007-01-13
资源大小:186k
文件大小:2k
- //---------------------------------------------------------------------------
- //
- // LockMgr.cpp
- //
- // SUBSYSTEM:
- // Generic libraries
- // MODULE:
- //
- // Interface declaration of CCSWrapper CRITICAL_SECTION wrapper
- // DESCRIPTION:
- //
- //
- // AUTHOR: Ivo Ivanov (ivopi@hotmail.com)
- // DATE: 2001 November 13, version 1.0
- //
- //---------------------------------------------------------------------------
- #include "LockMgr.h"
- //---------------------------------------------------------------------------
- //
- // class CCSWrapper
- //
- // CRTICIAL_SECTION user object wrapper
- //
- //---------------------------------------------------------------------------
- //---------------------------------------------------------------------------
- //
- // Constructor
- //
- //---------------------------------------------------------------------------
- CCSWrapper::CCSWrapper()
- {
- m_nSpinCount = 0;
- ::InitializeCriticalSection( &m_cs );
- }
- //---------------------------------------------------------------------------
- //
- // Destructor
- //
- //---------------------------------------------------------------------------
- CCSWrapper::~CCSWrapper()
- {
- ::DeleteCriticalSection( &m_cs );
- }
- //---------------------------------------------------------------------------
- // Enter
- //
- // This function waits for ownership of the specified critical section object
- //---------------------------------------------------------------------------
- void CCSWrapper::Enter()
- {
- ::EnterCriticalSection( &m_cs );
- m_nSpinCount++;
- }
- //---------------------------------------------------------------------------
- // Leave
- //
- // Releases ownership of the specified critical section object.
- //---------------------------------------------------------------------------
- void CCSWrapper::Leave()
- {
- m_nSpinCount--;
- ::LeaveCriticalSection( &m_cs );
- }
- //--------------------- End of the file -------------------------------------