Barrelfish
|
Event mutex. More...
Functions | |
void | event_mutex_init (struct event_mutex *em, struct waitset *waitset) |
Initialise a new event mutex. | |
bool | event_mutex_enqueue_lock (struct event_mutex *em, struct event_queue_node *qn, struct event_closure lockcont) |
Enqueue a lock acquisition request for the mutex. More... | |
void | event_mutex_threaded_lock (struct event_mutex *em) |
Acquire the mutex, blocking the calling thread until done. More... | |
void | event_mutex_unlock (struct event_mutex *em) |
Unlock the mutex, which must be held by the caller. More... | |
Event mutex.
bool event_mutex_enqueue_lock | ( | struct event_mutex * | em, |
struct event_queue_node * | qn, | ||
struct event_closure | lockcont | ||
) |
Enqueue a lock acquisition request for the mutex.
em | Event mutex |
qn | Storage for queue node. allocated by caller, live until continuation runs |
lockcont | Continuation for lock acquisition |
void event_mutex_threaded_lock | ( | struct event_mutex * | em | ) |
Acquire the mutex, blocking the calling thread until done.
em | Event mutex |
void event_mutex_unlock | ( | struct event_mutex * | em | ) |
Unlock the mutex, which must be held by the caller.