API for platform independent spinlock synchronization primitive.
| Namespace: | dmSpinlock |
| Include: | #include <dmsdk/dlib/spinlock.h> |
| STRUCTS | |
|---|---|
| struct dmSpinlock::Spinlock | Spinlock type definition |
| FUNCTIONS | |
|---|---|
| void dmSpinlock::Create (dmSpinlock::Spinlock* spinlock) | initialize spinlock. |
| void dmSpinlock::Destroy (dmSpinlock::Spinlock* spinlock) | destroy spinlock. |
| void dmSpinlock::Lock (dmSpinlock::Spinlock* spinlock) | lock spinlock. |
| void dmSpinlock::Unlock (dmSpinlock::Spinlock* spinlock) | unlock spinlock. |
| MACROS | |
|---|---|
| DM_SPINLOCK_SCOPED_LOCK (mutex) | macro for using a spinlock during a scope |
void dmSpinlock::Create(dmSpinlock::Spinlock* spinlock)
Initialize a Spinlock
PARAMETERS
dmSpinlock::Spinlock* |
spinlock |
spinlock to initialize. |
void dmSpinlock::Destroy(dmSpinlock::Spinlock* spinlock)
Destroy a Spinlock
PARAMETERS
dmSpinlock::Spinlock* |
spinlock |
spinlock to destroy. |
void dmSpinlock::Lock(dmSpinlock::Spinlock* spinlock)
Lock a Spinlock
PARAMETERS
dmSpinlock::Spinlock* |
spinlock |
spinlock to lock. |
void dmSpinlock::Unlock(dmSpinlock::Spinlock* spinlock)
Unlock a Spinlock
PARAMETERS
dmSpinlock::Spinlock* |
spinlock |
spinlock to unlock. |
Will lock a Spinlock and automatically unlock it at the end of the scope.
mutex |
Spinlock reference to lock. |