|
Zth (libzth)
|
#include <libzth/allocator.h>#include <libzth/fiber.h>#include <libzth/list.h>#include <libzth/util.h>#include <libzth/worker.h>#include <new>Go to the source code of this file.
Classes | |
| class | zth::RefCounted |
| class | zth::SharedPointer< T > |
| class | zth::Synchronizer |
| class | zth::Synchronizer::AlarmClock |
| class | zth::Mutex |
| Fiber-aware mutex. More... | |
| class | zth::Semaphore |
| Fiber-aware semaphore. More... | |
| class | zth::Signal |
| Fiber-aware signal. More... | |
| class | zth::Future< T > |
| Fiber-aware future. More... | |
| class | zth::Future< void > |
| class | zth::Gate |
| Fiber-aware barrier/gate. More... | |
| struct | zth_mutex_t |
| struct | zth_sem_t |
| struct | zth_cond_t |
| struct | zth_future_t |
| struct | zth_gate_t |
Namespaces | |
| zth | |
Macros | |
| #define | EOVERFLOW EAGAIN |
Typedefs | |
| typedef zth::Future< uintptr_t > | zth_future_t_type |
Functions | |
| int | zth_mutex_init (zth_mutex_t *mutex) noexcept |
| Initializes a mutex. More... | |
| int | zth_mutex_destroy (zth_mutex_t *mutex) noexcept |
| Destroys a mutex. More... | |
| int | zth_mutex_lock (zth_mutex_t *mutex) noexcept |
| Locks a mutex. More... | |
| int | zth_mutex_trylock (zth_mutex_t *mutex) noexcept |
| Try to lock a mutex. More... | |
| int | zth_mutex_unlock (zth_mutex_t *mutex) noexcept |
| Unlock a mutex. More... | |
| int | zth_sem_init (zth_sem_t *sem, size_t value) noexcept |
| Initializes a semaphore. More... | |
| int | zth_sem_destroy (zth_sem_t *sem) noexcept |
| Destroys a semaphore. More... | |
| int | zth_sem_getvalue (zth_sem_t *__restrict__ sem, size_t *__restrict__ value) noexcept |
| Returns the value of a semaphore. More... | |
| int | zth_sem_post (zth_sem_t *sem) noexcept |
| Increments a semaphore. More... | |
| int | zth_sem_wait (zth_sem_t *sem) noexcept |
| Decrements (or wait for) a semaphore. More... | |
| int | zth_sem_trywait (zth_sem_t *sem) noexcept |
| Try to decrement a semaphore. More... | |
| int | zth_cond_init (zth_cond_t *cond) noexcept |
| Initializes a condition. More... | |
| int | zth_cond_destroy (zth_cond_t *cond) noexcept |
| Destroys a condition. More... | |
| int | zth_cond_signal (zth_cond_t *cond) noexcept |
| Signals one fiber waiting for the condition. More... | |
| int | zth_cond_broadcast (zth_cond_t *cond) noexcept |
| Signals all fibers waiting for the condition. More... | |
| int | zth_cond_wait (zth_cond_t *cond) noexcept |
| Wait for a condition. More... | |
| int | zth_future_init (zth_future_t *future) noexcept |
| Initializes a future. More... | |
| int | zth_future_destroy (zth_future_t *future) noexcept |
| Destroys a future. More... | |
| int | zth_future_valid (zth_future_t *future) noexcept |
| Checks if a future was already set. More... | |
| int | zth_future_set (zth_future_t *future, uintptr_t value) noexcept |
| Sets a future and signals all waiting fibers. More... | |
| int | zth_future_get (zth_future_t *__restrict__ future, uintptr_t *__restrict__ value) noexcept |
| Wait for and return a future's value. More... | |
| int | zth_future_wait (zth_future_t *future) noexcept |
| Wait for a future. More... | |
| int | zth_gate_init (zth_gate_t *gate, size_t count) noexcept |
| Initializes a gate. More... | |
| int | zth_gate_destroy (zth_gate_t *gate) noexcept |
| Destroys a gate. More... | |
| int | zth_gate_pass (zth_gate_t *gate) noexcept |
| Passes a gate. More... | |
| int | zth_gate_wait (zth_gate_t *gate) noexcept |
| Wait for a gate. More... | |
| typedef zth::Future<uintptr_t> zth_future_t_type |