Realm
A distributed, event-based tasking library
Loading...
Searching...
No Matches
PRealm::FastReservation Class Reference

#include <prealm.h>

Inheritance diagram for PRealm::FastReservation:
Collaboration diagram for PRealm::FastReservation:

Additional Inherited Members

- Public Types inherited from Realm::FastReservation
enum  WaitMode { SPIN , ALWAYS_SPIN , WAIT , EXTERNAL_WAIT }
 
typedef uint32_t State
 
- Public Member Functions inherited from Realm::FastReservation
 FastReservation (Reservation _rsrv=Reservation::NO_RESERVATION)
 
 ~FastReservation (void)
 
Event lock (WaitMode mode=SPIN)
 
Event wrlock (WaitMode mode=SPIN)
 
Event rdlock (WaitMode mode=SPIN)
 
void unlock (void)
 
bool trylock (void)
 
bool trywrlock (void)
 
bool tryrdlock (void)
 
void advise_sleep_entry (UserEvent guard_event)
 
void advise_sleep_exit (void)
 
- Static Public Attributes inherited from Realm::FastReservation
static const State STATE_READER_COUNT_MASK = 0x03ffffff
 
static const State STATE_SLEEPER = 0x04000000
 
static const State STATE_WRITER = 0x08000000
 
static const State STATE_WRITER_WAITING = 0x10000000
 
static const State STATE_BASE_RSRV = 0x20000000
 
static const State STATE_BASE_RSRV_WAITING = 0x40000000
 
static const State STATE_SLOW_FALLBACK = 0x80000000
 
- Protected Member Functions inherited from Realm::FastReservation
Event wrlock_slow (WaitMode mode)
 
Event rdlock_slow (WaitMode mode)
 
void unlock_slow (void)
 
bool trywrlock_slow (void)
 
bool tryrdlock_slow (void)
 
 REALM_ALIGNED_TYPE_CONST (State_aligned, atomic< State >, 16)
 
- Protected Attributes inherited from Realm::FastReservation
State_aligned state
 
char opaque [CACHE_LINE_SIZE *4 - sizeof(atomic< State >)]
 
- Static Protected Attributes inherited from Realm::FastReservation
static const size_t CACHE_LINE_SIZE = 64
 

The documentation for this class was generated from the following file: