tlds
Transactional Operations for Linked Data Structures
|
#include <metadata.hpp>
Public Member Functions | |
void | setbit (unsigned slot) |
bool | getbit (unsigned slot) |
void | unsetbit (unsigned slot) |
bool | setif (unsigned slot) |
void | operator|= (rrec_t &rhs) |
Public Attributes | |
volatile uintptr_t | bits [BUCKETS] |
Static Public Attributes | |
static const uint32_t | BUCKETS = MAX_THREADS / (8*sizeof(uintptr_t)) |
static const uint32_t | BITS = 8*sizeof(uintptr_t) |
a reader record (rrec) holds bits representing up to MAX_THREADS reader transactions
NB: methods are implemented in algs.hpp, so that they are visible where needed, but not visible globally
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
static |
volatile uintptr_t stm::rrec_t::bits[BUCKETS] |
|
static |