B2BITS FIX Antenna HFT  1.0.13
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Public Attributes | List of all members
spinlock_reentrant Class Reference

#include <b2b_platform.h>

Public Member Functions

bool assert_isLocked () throw ()
 
thread_id_t lock (bool knockKnock=false) throw ()
 
 spinlock_reentrant ()
 
bool try_lock (bool knockKnock=false) throw ()
 
void unlock () throw ()
 
bool wasKnocked () throw ()
 
 ~spinlock_reentrant ()
 

Public Attributes

volatile unsigned counter_
 
volatile unsigned knocked_
 
SPINLOCK_T lock_
 
volatile thread_id_t owner_
 

Constructor & Destructor Documentation

spinlock_reentrant::spinlock_reentrant ( )
inline
spinlock_reentrant::~spinlock_reentrant ( )
inline

References lock_, and SPINLOCK_FINI.

Member Function Documentation

bool spinlock_reentrant::assert_isLocked ( )
throw (
)
inline

References counter_, lock_, owner_, and thread_id().

thread_id_t spinlock_reentrant::lock ( bool  knockKnock = false)
throw (
)
inline
bool spinlock_reentrant::try_lock ( bool  knockKnock = false)
throw (
)
inline
void spinlock_reentrant::unlock ( )
throw (
)
inline
bool spinlock_reentrant::wasKnocked ( )
throw (
)
inline

References knocked_.

Member Data Documentation

volatile unsigned spinlock_reentrant::counter_
volatile unsigned spinlock_reentrant::knocked_
SPINLOCK_T spinlock_reentrant::lock_
volatile thread_id_t spinlock_reentrant::owner_