ROFL-pipeline  v0.6.0dev
Typedefs | Functions
lock.h File Reference

Defines the locking interface used by the library. The user of the library MUST provide an implementation for his/her platform. More...

#include "rofl.h"

Go to the source code of this file.

Typedefs

typedef void platform_mutex_t
 
typedef void platform_rwlock_t
 

Functions

ROFL_BEGIN_DECLS platform_mutex_t * platform_mutex_init (void *params)
 Allocates and initializes a mutex. More...
 
void platform_mutex_destroy (platform_mutex_t *mutex)
 Destroys and deallocates a mutex previously inited by platform_mutex_init(). More...
 
void platform_mutex_lock (platform_mutex_t *mutex)
 Locks the platform_mutex_t mutex. More...
 
void platform_mutex_unlock (platform_mutex_t *mutex)
 Unlocks the platform_mutex_t mutex. More...
 
platform_rwlock_t * platform_rwlock_init (void *params)
 Allocates and initializes a rwlock. More...
 
void platform_rwlock_destroy (platform_rwlock_t *rwlock)
 Destroys and deallocates a rwlock previously inited by platform_rwlock_init(). More...
 
void platform_rwlock_rdlock (platform_rwlock_t *rwlock)
 Performs a read-lock over the platform_rwlock_t mutex platform_mutex_init(). More...
 
void platform_rwlock_rdunlock (platform_rwlock_t *rwlock)
 Performs a read-unlock over the platform_rwlock_t mutex platform_mutex_init(). More...
 
void platform_rwlock_wrlock (platform_rwlock_t *rwlock)
 Performs a write-lock over the platform_rwlock_t mutex platform_mutex_init(). More...
 
void platform_rwlock_wrunlock (platform_rwlock_t *rwlock)
 Performs a write-unlock over the platform_rwlock_t mutex platform_mutex_init(). More...
 

Detailed Description

Defines the locking interface used by the library. The user of the library MUST provide an implementation for his/her platform.

Author
Marc Sune<marc.sune (at) bisdn.de>

The locking API is the set of calls used by library to perform mutual exclusion operations. It is pretty much a standard POSIX-like interface, except for minor details.

The user MUST provide an implementation for his/her particular platform.

In a typical POSIX/libc system this would probably be mapped straight forward to pthread_mutex and pthread_rwlock calls.

Definition in file lock.h.