CX Framework
Cross-platform C utility framework
Loading...
Searching...
No Matches
mutex.h File Reference

Mutex synchronization primitive. More...

#include <cx/cx.h>
#include <cx/meta/block.h>
#include <cx/time/time.h>
#include <cx/utils/macros.h>
#include "aspin.h"
#include "futex.h"

Go to the source code of this file.

Data Structures

struct  Mutex
 

Macros

#define mutexInit(m, ...)   _mutexInit(m, opt_flags(__VA_ARGS__))
 
#define withMutex(m)   blkWrap (mutexAcquire(m), mutexRelease(m))
 

Typedefs

typedef struct Mutex Mutex
 

Enumerations

enum  MUTEX_Flags { MUTEX_NoSpin = 1 }
 Mutex initialization flags. More...
 

Functions

bool mutexTryAcquireTimeout (Mutex *m, int64 timeout)
 
bool mutexRelease (Mutex *m)
 
bool mutexTryAcquire (Mutex *m)
 
void mutexAcquire (Mutex *m)
 
void mutexDestroy (Mutex *m)
 

Detailed Description

Mutex synchronization primitive.

Definition in file mutex.h.