20 #ifdef USE_PTHREAD_MUTEX 25 #define janus_mutex_init(a) pthread_mutex_init(a,NULL) 27 #define JANUS_MUTEX_INITIALIZER PTHREAD_MUTEX_INITIALIZER 29 #define janus_mutex_destroy(a) pthread_mutex_destroy(a) 31 #define janus_mutex_lock_nodebug(a) pthread_mutex_lock(a); 33 #define janus_mutex_lock_debug(a) { JANUS_PRINT("[%s:%s:%d:lock] %p\n", __FILE__, __FUNCTION__, __LINE__, a); pthread_mutex_lock(a); }; 35 #define janus_mutex_lock(a) { if(!lock_debug) { janus_mutex_lock_nodebug(a); } else { janus_mutex_lock_debug(a); } }; 37 #define janus_mutex_unlock_nodebug(a) pthread_mutex_unlock(a); 39 #define janus_mutex_unlock_debug(a) { JANUS_PRINT("[%s:%s:%d:unlock] %p\n", __FILE__, __FUNCTION__, __LINE__, a); pthread_mutex_unlock(a); }; 41 #define janus_mutex_unlock(a) { if(!lock_debug) { janus_mutex_unlock_nodebug(a); } else { janus_mutex_unlock_debug(a); } }; 46 #define janus_condition_init(a) pthread_cond_init(a,NULL) 48 #define janus_condition_destroy(a) pthread_cond_destroy(a) 50 #define janus_condition_wait(a, b) pthread_cond_wait(a, b); 52 #define janus_condition_timedwait(a, b, c) pthread_cond_timedwait(a, b, c); 54 #define janus_condition_signal(a) pthread_cond_signal(a); 56 #define janus_condition_broadcast(a) pthread_cond_broadcast(a); 63 #define janus_mutex_init(a) g_mutex_init(a) 65 #define JANUS_MUTEX_INITIALIZER {0} 67 #define janus_mutex_destroy(a) g_mutex_clear(a) 69 #define janus_mutex_lock_nodebug(a) g_mutex_lock(a); 71 #define janus_mutex_lock_debug(a) { JANUS_PRINT("[%s:%s:%d:lock] %p\n", __FILE__, __FUNCTION__, __LINE__, a); g_mutex_lock(a); }; 73 #define janus_mutex_lock(a) { if(!lock_debug) { janus_mutex_lock_nodebug(a); } else { janus_mutex_lock_debug(a); } }; 75 #define janus_mutex_unlock_nodebug(a) g_mutex_unlock(a); 77 #define janus_mutex_unlock_debug(a) { JANUS_PRINT("[%s:%s:%d:unlock] %p\n", __FILE__, __FUNCTION__, __LINE__, a); g_mutex_unlock(a); }; 79 #define janus_mutex_unlock(a) { if(!lock_debug) { janus_mutex_unlock_nodebug(a); } else { janus_mutex_unlock_debug(a); } }; 84 #define janus_condition_init(a) g_cond_init(a) 86 #define janus_condition_destroy(a) g_cond_clear(a) 88 #define janus_condition_wait(a, b) g_cond_wait(a, b); 90 #define janus_condition_wait_until(a, b, c) g_cond_wait_until(a, b, c); 92 #define janus_condition_signal(a) g_cond_signal(a); 94 #define janus_condition_broadcast(a) g_cond_broadcast(a);
GMutex janus_mutex
Janus mutex implementation.
Definition: mutex.h:61
int lock_debug
Definition: janus-cfgconv.c:38
GCond janus_condition
Janus condition implementation.
Definition: mutex.h:82