여러개의 쓰레드가 동시에 하나의 변수를 변경시켜줄 때, 문제가 생기는 것을 방지하기 위해 쓰레드에 순위를 매겨서 처리하는 방식의 세마포어와는 달리 뮤텍스는 쓰레드가 들어오는 순서대로 처리해 주는 방식으로 사용한다. class CMutex { private: static HANDLE m_mutex; //뮤텍스 핸들 DWORD m_owner; //지금 Lock되어있는 Thread ID값 public: static void Init(); static void Remove(); CMutex(); ~CMutex(); void Lock(); void Unlock(); }; void CMutex::Init() { m_mutex = CreateMutex(NULL,FALSE,NULL); memset(&m_owner, 0..