27 #ifndef __ETL__MUTEX_PTHREADS_H_
28 #define __ETL__MUTEX_PTHREADS_H_
55 pthread_mutexattr_t attr;
56 pthread_mutexattr_init(&attr);
60 #ifdef PTHREAD_MUTEX_RECURSIVE
61 pthread_mutexattr_settype(&attr,PTHREAD_MUTEX_RECURSIVE);
63 pthread_mutex_init(&
mtx,&attr);
64 pthread_mutexattr_destroy(&attr);
70 { pthread_mutex_destroy(&
mtx); }
87 pthread_mutex_lock(&
mtx);
96 {
return !(bool) pthread_mutex_trylock(&
mtx); }
105 pthread_mutex_unlock(&
mtx);