diff options
author | Joshua Rowe <17525998+omnisci3nce@users.noreply.github.com> | 2024-05-20 10:50:11 +1000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-05-20 10:50:11 +1000 |
commit | e904c22003c3a134201b222e6619e782fbe63947 (patch) | |
tree | 5295c8ce5f855ca4a0f1bebe50beee80bae66682 /src/platform/mutex.h | |
parent | 02e84ee4d18e705e3362be1e327fdb6f1397a032 (diff) | |
parent | 73d4145f46d2305f45761b8e456df692d1962dfb (diff) |
Merge pull request #14 from omnisci3nce/realign
Realign
Diffstat (limited to 'src/platform/mutex.h')
-rw-r--r-- | src/platform/mutex.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/platform/mutex.h b/src/platform/mutex.h new file mode 100644 index 0000000..a0a4208 --- /dev/null +++ b/src/platform/mutex.h @@ -0,0 +1,28 @@ +/** + * @file mutex.h + * @author your name (you@domain.com) + * @brief + * @version 0.1 + * @date 2024-04-27 + * + * @copyright Copyright (c) 2024 + * + */ +#include <stdbool.h> + +typedef struct cel_mutex cel_mutex; + +cel_mutex mutex_create(); + +void mutex_destroy(cel_mutex* mutex); + +/** @brief Blocks until the mutex can be acquired. if returns false then an error occurred and can + * be checked (TODO) */ +bool mutex_lock(cel_mutex* mutex); + +/** @brief Tries to acquire the mutex like `mutex_lock` but returns immediately if the mutex has + * already been locked */ +bool mutex_try_lock(cel_mutex* mutex); + +/** @brief Releases a mutex. If it is already unlocked then does nothing */ +void mutex_unlock(cel_mutex* mutex);
\ No newline at end of file |