llarp::thread::QueueManager
Public Types
Public Functions
|
Name |
| int32_t |
circularDifference(uint32_t startingValue, uint32_t subtractValue, uint32_t modulo) |
| uint32_t |
numGenerations(size_t capacity) |
|
QueueManager(size_t capacity) |
|
~QueueManager() |
| QueueReturn |
reservePushIndex(uint32_t & generation, uint32_t & index) |
| void |
commitPushIndex(uint32_t generation, uint32_t index) |
| QueueReturn |
reservePopIndex(uint32_t & generation, uint32_t & index) |
| void |
commitPopIndex(uint32_t generation, uint32_t index) |
| void |
disable() |
| void |
enable() |
| bool |
reservePopForClear(uint32_t & generation, uint32_t & index, uint32_t endGeneration, uint32_t endIndex) |
| void |
abortPushIndexReservation(uint32_t generation, uint32_t index) |
| bool |
enabled() const |
| size_t |
size() const |
| size_t |
capacity() const |
Public Attributes
Public Types Documentation
using AtomicIndex
using llarp::thread::QueueManager::AtomicIndex = std::atomic<std::uint32_t>;
Public Functions Documentation
function circularDifference
static int32_t circularDifference(
uint32_t startingValue,
uint32_t subtractValue,
uint32_t modulo
)
function numGenerations
static uint32_t numGenerations(
size_t capacity
)
function QueueManager
explicit QueueManager(
size_t capacity
)
function ~QueueManager
~QueueManager()
function reservePushIndex
QueueReturn reservePushIndex(
uint32_t & generation,
uint32_t & index
)
function commitPushIndex
void commitPushIndex(
uint32_t generation,
uint32_t index
)
function reservePopIndex
QueueReturn reservePopIndex(
uint32_t & generation,
uint32_t & index
)
function commitPopIndex
void commitPopIndex(
uint32_t generation,
uint32_t index
)
function disable
void disable()
function enable
void enable()
function reservePopForClear
bool reservePopForClear(
uint32_t & generation,
uint32_t & index,
uint32_t endGeneration,
uint32_t endIndex
)
function abortPushIndexReservation
void abortPushIndexReservation(
uint32_t generation,
uint32_t index
)
function enabled
bool enabled() const
function size
size_t size() const
function capacity
size_t capacity() const
Public Attributes Documentation
variable Alignment
static constexpr size_t Alignment = 64;
variable MAX_CAPACITY
static constexpr size_t MAX_CAPACITY = 1 << ((sizeof(uint32_t) * 8) - 2);
Updated on 2026-01-10 at 22:49:45 +0000