본문 바로가기

고급C,C++

[C++]Critical Section


class CS_Guard 
{
public:
CS_Guard()
{
InitializeCriticalSection(&m_cs);
::EnterCriticalSection(&m_cs);
}
~CS_Guard()
{
::LeaveCriticalSection(&m_cs);
DeleteCriticalSection(&m_cs);
}
private:
CRITICAL_SECTION m_cs;
};