ARGOBOTS  1227c643f7a7f974f1f1778a9ffebd29d7dafecf
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
Functions
mutex.c File Reference
#include "abti.h"
#include "abti_ythread_htable.h"
Include dependency graph for mutex.c:

Go to the source code of this file.

Functions

static void mutex_lock_low (ABTI_local **pp_local, ABTI_mutex *p_mutex)
 
static void mutex_unlock_se (ABTI_local **pp_local, ABTI_mutex *p_mutex)
 
int ABT_mutex_create (ABT_mutex *newmutex)
 Create a new mutex. More...
 
int ABT_mutex_create_with_attr (ABT_mutex_attr attr, ABT_mutex *newmutex)
 Create a new mutex with attributes. More...
 
int ABT_mutex_free (ABT_mutex *mutex)
 Free the mutex object. More...
 
int ABT_mutex_lock (ABT_mutex mutex)
 Lock the mutex. More...
 
int ABT_mutex_lock_low (ABT_mutex mutex)
 Lock the mutex with low priority. More...
 
int ABT_mutex_lock_high (ABT_mutex mutex)
 
int ABT_mutex_trylock (ABT_mutex mutex)
 Attempt to lock a mutex without blocking. More...
 
int ABT_mutex_spinlock (ABT_mutex mutex)
 Lock the mutex without context switch. More...
 
int ABT_mutex_unlock (ABT_mutex mutex)
 Unlock the mutex. More...
 
int ABT_mutex_unlock_se (ABT_mutex mutex)
 Hand over the mutex within the ES. More...
 
int ABT_mutex_unlock_de (ABT_mutex mutex)
 
int ABT_mutex_equal (ABT_mutex mutex1, ABT_mutex mutex2, ABT_bool *result)
 Compare two mutex handles for equality. More...
 
void ABTI_mutex_wait (ABTI_xstream **pp_local_xstream, ABTI_mutex *p_mutex, int val)
 
void ABTI_mutex_wait_low (ABTI_xstream **pp_local_xstream, ABTI_mutex *p_mutex, int val)
 
void ABTI_mutex_wake_de (ABTI_local *p_local, ABTI_mutex *p_mutex)
 

Function Documentation

int ABT_mutex_lock_high ( ABT_mutex  mutex)

Definition at line 242 of file mutex.c.

int ABT_mutex_unlock_de ( ABT_mutex  mutex)

Definition at line 452 of file mutex.c.

void ABTI_mutex_wait ( ABTI_xstream **  pp_local_xstream,
ABTI_mutex p_mutex,
int  val 
)

Definition at line 496 of file mutex.c.

Referenced by ABTI_mutex_lock().

void ABTI_mutex_wait_low ( ABTI_xstream **  pp_local_xstream,
ABTI_mutex p_mutex,
int  val 
)

Definition at line 532 of file mutex.c.

Referenced by mutex_lock_low().

void ABTI_mutex_wake_de ( ABTI_local p_local,
ABTI_mutex p_mutex 
)

Definition at line 568 of file mutex.c.

Referenced by ABTI_mutex_unlock(), and mutex_unlock_se().

static void mutex_lock_low ( ABTI_local **  pp_local,
ABTI_mutex p_mutex 
)
inlinestatic

Definition at line 641 of file mutex.c.

Referenced by ABT_mutex_lock_low().

static void mutex_unlock_se ( ABTI_local **  pp_local,
ABTI_mutex p_mutex 
)
inlinestatic

Definition at line 724 of file mutex.c.

Referenced by ABT_mutex_unlock_se().