libgaminggear
Typedefs | Functions
threads.h File Reference

Wrappers around glib thread synchronization primitives. More...

Typedefs

typedef GMutex * GaminggearMutex
 A mutex. More...
 
typedef GCond * GaminggearCond
 A condition. More...
 
typedef GStaticRecMutex GaminggearRecMutex
 A recursive mutex. More...
 
typedef GStaticRWLock GaminggearRWLock
 A reader/writer lock. More...
 
typedef gboolean(* gaminggear_cond_handler) (gpointer user_data)
 Condition handler. More...
 

Functions

static GThread * gaminggear_thread_try_new (GThreadFunc func, gpointer data, GError **error)
 Create new thread. More...
 
static void gaminggear_mutex_init (GaminggearMutex *mutex)
 Initializes a GaminggearMutex. More...
 
static void gaminggear_mutex_clear (GaminggearMutex *mutex)
 Frees resources of a GaminggearMutex. More...
 
static void gaminggear_mutex_lock (GaminggearMutex *mutex)
 Locks a GaminggearMutex. More...
 
static void gaminggear_mutex_unlock (GaminggearMutex *mutex)
 Unlocks a GaminggearMutex. More...
 
static void gaminggear_cond_init (GaminggearCond *cond)
 Initializes a GaminggearCond. More...
 
static void gaminggear_cond_clear (GaminggearCond *cond)
 Frees resources of a GaminggearCond. More...
 
static void gaminggear_cond_wait (GaminggearCond *cond, GaminggearMutex *mutex)
 Waits for a signal. More...
 
static void gaminggear_cond_wait_for (GaminggearCond *cond, GaminggearMutex *mutex, gaminggear_cond_handler handler, gpointer user_data)
 Waits for a signal until condition is met. More...
 
static gboolean gaminggear_cond_wait_for_timed (GaminggearCond *cond, GaminggearMutex *mutex, glong microseconds, gaminggear_cond_handler handler, gpointer user_data)
 Waits for a signal until condition is met or time expired. More...
 
static void gaminggear_cond_signal (GaminggearCond *cond)
 Wake up a waiting thread. More...
 
static void gaminggear_rec_mutex_init (GaminggearRecMutex *mutex)
 Initializes a GaminggearRecMutex. More...
 
static void gaminggear_rec_mutex_clear (GaminggearRecMutex *mutex)
 Frees resources of a GaminggearRecMutex. More...
 
static void gaminggear_rec_mutex_lock (GaminggearRecMutex *mutex)
 Locks a GaminggearRecMutex. More...
 
static void gaminggear_rec_mutex_unlock (GaminggearRecMutex *mutex)
 Unlocks a GaminggearRecMutex. More...
 
static void gaminggear_rw_lock_init (GaminggearRWLock *lock)
 Initializes a GaminggearRWLock. More...
 
static void gaminggear_rw_lock_clear (GaminggearRWLock *lock)
 Frees resources of a GaminggearRWLock. More...
 
static void gaminggear_rw_lock_reader_lock (GaminggearRWLock *lock)
 Locks a GaminggearRWLock in reader mode. More...
 
static void gaminggear_rw_lock_reader_unlock (GaminggearRWLock *lock)
 Unlocks a reader mode locked GaminggearRWLock. More...
 
static void gaminggear_rw_lock_writer_lock (GaminggearRWLock *lock)
 Locks a GaminggearRWLock in writer mode. More...
 
static void gaminggear_rw_lock_writer_unlock (GaminggearRWLock *lock)
 Unlocks a writer mode locked GaminggearRWLock. More...
 

Detailed Description

Wrappers around glib thread synchronization primitives.

Glib changed its api with version 2.32.0. These wrappers provide a consistent api for all glib-2 versions.

For details please consult the appropriate glib documentation. < 2.32.0 >= 2.32.0

Typedef Documentation

◆ gaminggear_cond_handler

typedef gboolean(* gaminggear_cond_handler) (gpointer user_data)

Condition handler.

Since
1.0 Should return TRUE if condition is met

◆ GaminggearCond

A condition.

◆ GaminggearMutex

A mutex.

◆ GaminggearRecMutex

A recursive mutex.

◆ GaminggearRWLock

A reader/writer lock.

Function Documentation

◆ gaminggear_cond_clear()

static void gaminggear_cond_clear ( GaminggearCond cond)
inlinestatic

Frees resources of a GaminggearCond.

Since
1.0

◆ gaminggear_cond_init()

static void gaminggear_cond_init ( GaminggearCond cond)
inlinestatic

Initializes a GaminggearCond.

Since
1.0

◆ gaminggear_cond_signal()

static void gaminggear_cond_signal ( GaminggearCond cond)
inlinestatic

Wake up a waiting thread.

Since
1.0

◆ gaminggear_cond_wait()

static void gaminggear_cond_wait ( GaminggearCond cond,
GaminggearMutex mutex 
)
inlinestatic

Waits for a signal.

Since
1.0

◆ gaminggear_cond_wait_for()

static void gaminggear_cond_wait_for ( GaminggearCond cond,
GaminggearMutex mutex,
gaminggear_cond_handler  handler,
gpointer  user_data 
)
inlinestatic

Waits for a signal until condition is met.

Since
1.0

◆ gaminggear_cond_wait_for_timed()

static gboolean gaminggear_cond_wait_for_timed ( GaminggearCond cond,
GaminggearMutex mutex,
glong  microseconds,
gaminggear_cond_handler  handler,
gpointer  user_data 
)
inlinestatic

Waits for a signal until condition is met or time expired.

Return values
FALSEon timeout, TRUE if condition was met.
Since
1.0

◆ gaminggear_mutex_clear()

static void gaminggear_mutex_clear ( GaminggearMutex mutex)
inlinestatic

Frees resources of a GaminggearMutex.

Since
1.0

◆ gaminggear_mutex_init()

static void gaminggear_mutex_init ( GaminggearMutex mutex)
inlinestatic

Initializes a GaminggearMutex.

Since
1.0

◆ gaminggear_mutex_lock()

static void gaminggear_mutex_lock ( GaminggearMutex mutex)
inlinestatic

Locks a GaminggearMutex.

Since
1.0

◆ gaminggear_mutex_unlock()

static void gaminggear_mutex_unlock ( GaminggearMutex mutex)
inlinestatic

Unlocks a GaminggearMutex.

Since
1.0

◆ gaminggear_rec_mutex_clear()

static void gaminggear_rec_mutex_clear ( GaminggearRecMutex mutex)
inlinestatic

Frees resources of a GaminggearRecMutex.

Since
1.0

◆ gaminggear_rec_mutex_init()

static void gaminggear_rec_mutex_init ( GaminggearRecMutex mutex)
inlinestatic

Initializes a GaminggearRecMutex.

Since
1.0

◆ gaminggear_rec_mutex_lock()

static void gaminggear_rec_mutex_lock ( GaminggearRecMutex mutex)
inlinestatic

Locks a GaminggearRecMutex.

Since
1.0

◆ gaminggear_rec_mutex_unlock()

static void gaminggear_rec_mutex_unlock ( GaminggearRecMutex mutex)
inlinestatic

Unlocks a GaminggearRecMutex.

Since
1.0

◆ gaminggear_rw_lock_clear()

static void gaminggear_rw_lock_clear ( GaminggearRWLock lock)
inlinestatic

Frees resources of a GaminggearRWLock.

Since
1.0

◆ gaminggear_rw_lock_init()

static void gaminggear_rw_lock_init ( GaminggearRWLock lock)
inlinestatic

Initializes a GaminggearRWLock.

Since
1.0

◆ gaminggear_rw_lock_reader_lock()

static void gaminggear_rw_lock_reader_lock ( GaminggearRWLock lock)
inlinestatic

Locks a GaminggearRWLock in reader mode.

Since
1.0

◆ gaminggear_rw_lock_reader_unlock()

static void gaminggear_rw_lock_reader_unlock ( GaminggearRWLock lock)
inlinestatic

Unlocks a reader mode locked GaminggearRWLock.

Since
1.0

◆ gaminggear_rw_lock_writer_lock()

static void gaminggear_rw_lock_writer_lock ( GaminggearRWLock lock)
inlinestatic

Locks a GaminggearRWLock in writer mode.

Since
1.0

◆ gaminggear_rw_lock_writer_unlock()

static void gaminggear_rw_lock_writer_unlock ( GaminggearRWLock lock)
inlinestatic

Unlocks a writer mode locked GaminggearRWLock.

Since
1.0

◆ gaminggear_thread_try_new()

static GThread* gaminggear_thread_try_new ( GThreadFunc  func,
gpointer  data,
GError **  error 
)
inlinestatic

Create new thread.

Since
1.0