9 #if CAUDIO_MAKE_THREAD_SAFE == 1
10 cAudioMutex::cAudioMutex() : Initialized(false)
14 cAudioMutex::~cAudioMutex()
18 #ifdef CAUDIO_PLATFORM_WIN
19 DeleteCriticalSection(&criticalSection);
21 pthread_mutex_destroy(&Mutex);
25 void cAudioMutex::lock(
void)
30 #ifdef CAUDIO_PLATFORM_WIN
31 EnterCriticalSection(&criticalSection);
33 pthread_mutex_lock(&Mutex);
37 void cAudioMutex::unlock(
void)
41 #ifdef CAUDIO_PLATFORM_WIN
42 LeaveCriticalSection(&criticalSection);
44 pthread_mutex_unlock(&Mutex);
48 void cAudioMutex::initialize(
void)
50 #ifdef CAUDIO_PLATFORM_WIN
51 InitializeCriticalSection(&criticalSection);
53 pthread_mutexattr_t attr;
54 pthread_mutexattr_init(&attr);
55 pthread_mutexattr_settype(&attr,PTHREAD_MUTEX_RECURSIVE);
56 pthread_mutex_init(&Mutex, &attr);
57 pthread_mutexattr_destroy(&attr);