#pragma once struct Mutex : CRITICAL_SECTION { Mutex() { InitializeCriticalSection(this); } ~Mutex() { DeleteCriticalSection(this); } void lock() { EnterCriticalSection(this); } void unlock() { LeaveCriticalSection(this); } };