SimGrid  3.16
Versatile Simulation of Distributed Systems
smx_synchro_private.h File Reference

Classes

class  simgrid::simix::MutexImpl
 
struct  s_smx_cond
 
struct  s_smx_sem
 

Namespaces

 simgrid
 Alltoall Bruck.
 
 simgrid::simix
 

Typedefs

typedef struct s_smx_cond s_smx_cond_t
 
typedef struct s_smx_sem s_smx_sem_t
 

Functions

void SIMIX_post_synchro (smx_activity_t synchro)
 
void SIMIX_synchro_stop_waiting (smx_actor_t process, smx_simcall_t simcall)
 
void SIMIX_synchro_destroy (smx_activity_t synchro)
 
void SIMIX_synchro_finish (smx_activity_t synchro)
 
smx_cond_t SIMIX_cond_init ()
 Initialize a condition. More...
 
void SIMIX_cond_broadcast (smx_cond_t cond)
 Broadcasts a condition. More...
 
void SIMIX_cond_signal (smx_cond_t cond)
 Signalizes a condition. More...
 
void intrusive_ptr_add_ref (s_smx_cond_t *cond)
 
void intrusive_ptr_release (s_smx_cond_t *cond)
 
smx_sem_t SIMIX_sem_init (unsigned int value)
 Initialize a semaphore. More...
 
void SIMIX_sem_release (smx_sem_t sem)
 release the semaphore More...
 
int SIMIX_sem_would_block (smx_sem_t sem)
 Returns true if acquiring this semaphore would block. More...
 
int SIMIX_sem_get_capacity (smx_sem_t sem)
 Returns the current capacity of the semaphore. More...
 

Typedef Documentation

◆ s_smx_cond_t

typedef struct s_smx_cond s_smx_cond_t

◆ s_smx_sem_t

typedef struct s_smx_sem s_smx_sem_t

Function Documentation

◆ SIMIX_post_synchro()

void SIMIX_post_synchro ( smx_activity_t  synchro)

◆ SIMIX_synchro_stop_waiting()

void SIMIX_synchro_stop_waiting ( smx_actor_t  process,
smx_simcall_t  simcall 
)

◆ SIMIX_synchro_destroy()

void SIMIX_synchro_destroy ( smx_activity_t  synchro)

◆ SIMIX_synchro_finish()

void SIMIX_synchro_finish ( smx_activity_t  synchro)

◆ SIMIX_cond_init()

smx_cond_t SIMIX_cond_init ( )

Initialize a condition.

Allocates and creates the data for the condition. It have to be called before the use of the condition.

Returns
A condition

◆ SIMIX_cond_broadcast()

void SIMIX_cond_broadcast ( smx_cond_t  cond)

Broadcasts a condition.

Signal ALL processes waiting on a condition. If there are no process waiting, no action is done.

Parameters
condA condition

◆ SIMIX_cond_signal()

void SIMIX_cond_signal ( smx_cond_t  cond)

Signalizes a condition.

Signalizes a condition and wakes up a sleeping process. If there are no process sleeping, no action is done.

Parameters
condA condition

◆ intrusive_ptr_add_ref()

void intrusive_ptr_add_ref ( s_smx_cond_t cond)

◆ intrusive_ptr_release()

void intrusive_ptr_release ( s_smx_cond_t cond)

◆ SIMIX_sem_init()

smx_sem_t SIMIX_sem_init ( unsigned int  value)

Initialize a semaphore.

◆ SIMIX_sem_release()

void SIMIX_sem_release ( smx_sem_t  sem)

release the semaphore

Unlock a process waiting on the semaphore. If no one was blocked, the semaphore capacity is increased by 1.

◆ SIMIX_sem_would_block()

int SIMIX_sem_would_block ( smx_sem_t  sem)

Returns true if acquiring this semaphore would block.

◆ SIMIX_sem_get_capacity()

int SIMIX_sem_get_capacity ( smx_sem_t  sem)

Returns the current capacity of the semaphore.