Defold Learn logo


Spinlock

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

Functions

dmSpinlock::Create

void dmSpinlock::Create(dmSpinlock::Spinlock* spinlock)

Initialize a Spinlock

PARAMETERS

dmSpinlock::Spinlock* spinlock spinlock to initialize.

dmSpinlock::Destroy

void dmSpinlock::Destroy(dmSpinlock::Spinlock* spinlock)

Destroy a Spinlock

PARAMETERS

dmSpinlock::Spinlock* spinlock spinlock to destroy.

dmSpinlock::Lock

void dmSpinlock::Lock(dmSpinlock::Spinlock* spinlock)

Lock a Spinlock

PARAMETERS

dmSpinlock::Spinlock* spinlock spinlock to lock.

dmSpinlock::Unlock

void dmSpinlock::Unlock(dmSpinlock::Spinlock* spinlock)

Unlock a Spinlock

PARAMETERS

dmSpinlock::Spinlock* spinlock spinlock to unlock.

Structs

dmSpinlock::Spinlock

TYPE

struct dmSpinlock::Spinlock

struct Spinlock;


Macros

DM_SPINLOCK_SCOPED_LOCK

Will lock a Spinlock and automatically unlock it at the end of the scope.

mutex Spinlock reference to lock.