X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/46bade924148e45d2fd389682cddc4c3eabdff96..db66fa6dd6b110bd9b72f6f68732263382aec323:/src/include/xbt/xbt_os_thread.h diff --git a/src/include/xbt/xbt_os_thread.h b/src/include/xbt/xbt_os_thread.h index e42d2ec0f4..8cc4f0f8c6 100644 --- a/src/include/xbt/xbt_os_thread.h +++ b/src/include/xbt/xbt_os_thread.h @@ -44,8 +44,8 @@ SG_BEGIN_DECL() typedef struct xbt_os_mutex_ *xbt_os_mutex_t; XBT_PUBLIC(xbt_os_mutex_t) xbt_os_mutex_init(void); - XBT_PUBLIC(void) xbt_os_mutex_lock(xbt_os_mutex_t mutex); - XBT_PUBLIC(void) xbt_os_mutex_unlock(xbt_os_mutex_t mutex); + XBT_PUBLIC(void) xbt_os_mutex_acquire(xbt_os_mutex_t mutex); + XBT_PUBLIC(void) xbt_os_mutex_release(xbt_os_mutex_t mutex); XBT_PUBLIC(void) xbt_os_mutex_destroy(xbt_os_mutex_t mutex); @@ -61,6 +61,17 @@ SG_BEGIN_DECL() XBT_PUBLIC(void) xbt_os_cond_signal(xbt_os_cond_t cond); XBT_PUBLIC(void) xbt_os_cond_broadcast(xbt_os_cond_t cond); XBT_PUBLIC(void) xbt_os_cond_destroy(xbt_os_cond_t cond); + + /** \brief Semaphore data type (opaque structure) */ + typedef struct xbt_os_sem_* xbt_os_sem_t; + + XBT_PUBLIC(xbt_os_sem_t) xbt_os_sem_init(unsigned int value); + XBT_PUBLIC(void) xbt_os_sem_acquire(xbt_os_sem_t sem); + XBT_PUBLIC(void) xbt_os_sem_timedacquire(xbt_os_sem_t sem,double timeout); + XBT_PUBLIC(void) xbt_os_sem_release(xbt_os_sem_t sem); + XBT_PUBLIC(void) xbt_os_sem_destroy(xbt_os_sem_t sem); + XBT_PUBLIC(void) xbt_os_sem_get_value(xbt_os_sem_t sem, int* svalue); + /** @} */