3 /* Copyright (c) 2007 Arnaud Legrand, Bruno Donnassolo.
4 All rights reserved. */
6 /* This program is free software; you can redistribute it and/or modify it
7 * under the terms of the license (GNU LGPL) which comes with this package. */
13 XBT_LOG_NEW_DEFAULT_SUBCATEGORY(simix_synchro, simix,
14 "Logging specific to SIMIX (synchronization)");
17 /****************************** Synchronization *******************************/
19 /*********************************** Mutex ************************************/
20 smx_mutex_t SIMIX_mutex_init()
22 return xbt_new0(s_smx_mutex_t,1);
25 void SIMIX_mutex_lock(smx_mutex_t mutex)
30 void SIMIX_mutex_trylock(smx_mutex_t mutex)
35 void SIMIX_mutex_unlock(smx_mutex_t mutex)
40 void SIMIX_mutex_destroy(smx_mutex_t mutex)
45 /******************************** Conditional *********************************/
46 smx_cond_t SIMIX_cond_init()
48 return xbt_new0(s_smx_cond_t,1);
51 void SIMIX_cond_signal(smx_cond_t cond)
56 void SIMIX_cond_wait(smx_cond_t cond,smx_mutex_t mutex)
61 void SIMIX_cond_wait_timeout(smx_cond_t cond,smx_mutex_t mutex, double max_duration)
66 void SIMIX_cond_broadcast(smx_cond_t cond)
71 void SIMIX_cond_destroy(smx_cond_t cond)