|
PatchworkOS
|
Go to the source code of this file.
Data Structures | |
| struct | rwmutex_t |
| Read-Write Mutex structure. More... | |
Macros | |
| #define | RWMUTEX_READ_SCOPE(mutex) |
| Acquires a rwmutex for reading for the reminder of the current scope. | |
| #define | RWMUTEX_WRITE_SCOPE(mutex) |
| Acquires a rwmutex for writing for the reminder of the current scope. | |
Typedefs | |
| typedef struct rwmutex | rwmutex_t |
Functions | |
| void | rwmutex_init (rwmutex_t *mtx) |
| Initializes a rwmutex. | |
| void | rwmutex_deinit (rwmutex_t *mtx) |
| Deinitializes a rwmutex. | |
| void | rwmutex_read_acquire (rwmutex_t *mtx) |
| Acquires a rwmutex for reading, blocking until it is available. | |
| uint64_t | rwmutex_read_try_acquire (rwmutex_t *mtx) |
| Tries to acquire a rwmutex for reading. | |
| void | rwmutex_read_release (rwmutex_t *mtx) |
| Releases a rwmutex from reading. | |
| void | rwmutex_write_acquire (rwmutex_t *mtx) |
| Acquires a rwmutex for writing, blocking until it is available. | |
| uint64_t | rwmutex_write_try_acquire (rwmutex_t *mtx) |
| Tries to acquire a rwmutex for writing. | |
| void | rwmutex_write_release (rwmutex_t *mtx) |
| Releases a rwmutex from writing. | |
| static void | rwmutex_read_cleanup (rwmutex_t **mutex) |
| static void | rwmutex_write_cleanup (rwmutex_t **mutex) |