GRPC C++  1.26.0
Data Structures | Macros
spinlock.h File Reference
#include <grpc/support/port_platform.h>
#include <grpc/support/atm.h>

Go to the source code of this file.

Data Structures

struct  gpr_spinlock
 

Macros

#define GPR_SPINLOCK_INITIALIZER   ((gpr_spinlock){0})
 
#define GPR_SPINLOCK_STATIC_INITIALIZER   { 0 }
 
#define gpr_spinlock_trylock(lock)   (gpr_atm_acq_cas(&(lock)->atm, 0, 1))
 
#define gpr_spinlock_unlock(lock)   (gpr_atm_rel_store(&(lock)->atm, 0))
 
#define gpr_spinlock_lock(lock)
 

Macro Definition Documentation

◆ GPR_SPINLOCK_INITIALIZER

#define GPR_SPINLOCK_INITIALIZER   ((gpr_spinlock){0})

◆ gpr_spinlock_lock

#define gpr_spinlock_lock (   lock)
Value:
do { \
} while (!gpr_spinlock_trylock((lock)))
#define gpr_spinlock_trylock(lock)
Definition: spinlock.h:40

◆ GPR_SPINLOCK_STATIC_INITIALIZER

#define GPR_SPINLOCK_STATIC_INITIALIZER   { 0 }

◆ gpr_spinlock_trylock

#define gpr_spinlock_trylock (   lock)    (gpr_atm_acq_cas(&(lock)->atm, 0, 1))

◆ gpr_spinlock_unlock

#define gpr_spinlock_unlock (   lock)    (gpr_atm_rel_store(&(lock)->atm, 0))