22 #ifndef __AUDACITY_ODTASKTHREAD__
23 #define __AUDACITY_ODTASKTHREAD__
25 #include "../Audacity.h"
27 #include <wx/thread.h>
29 #include "../MemoryX.h"
41 pthread_mutex_init (&mutex, NULL);
46 pthread_mutex_lock (&mutex);
52 return pthread_mutex_trylock (&mutex);
57 pthread_mutex_unlock (&mutex);
62 pthread_mutex_destroy (&mutex);
67 pthread_mutex_t mutex;
80 pthread_cond_t condition;
88 class AUDACITY_DLL_API
ODLock final :
public wxMutex
130 ODLockerBase::reset(p);
133 if (p->TryLock() != 0)
134 ODLockerBase::reset(
nullptr);
144 ODLockerBase::operator= ( std::move(that) );
152 #endif //__AUDACITY_ODTASKTHREAD__